Adding theList Variable above class made it global.
Then I had to remove let from the addTask function. 
//Add Task Function
        func addTask(serial: String){
            tasks.append(task(serial: serial))
       let theList = tasks.map({ (task) -> String in
            return task.serial
        }).joinWithSeparator("\n")
Became 
//Add Task Function
        func addTask(serial: String){
            tasks.append(task(serial: serial))
       theList = tasks.map({ (task) -> String in
            return task.serial
        }).joinWithSeparator("\n")
The final code is as follows. 
import UIKit
var theList : String = String()
var taskMgr: TaskManager = TaskManager()
struct task {
    var serial = "Un-Named"
}
public class TaskManager: NSObject {
    //Sets up array of Tasks
    var tasks = [task]()
    //Add Task Function
    func addTask(serial: String){
        tasks.append(task(serial: serial))
   theList = tasks.map({ (task) -> String in
        return task.serial
    }).joinWithSeparator("\n")
    do {
    //try tasksString.writeToFile(pathToFile, atomically: true, encoding: NSUTF8StringEncoding)
    print(theList)
    }
  }
}
I selected the answer. Thank you to all who helped cure my tired eyes.