         return datasource.numberOfRows() - lastNumRows
     }
     
-    func tick(timer: NSTimer) {
+    func tick() {
         objc_sync_enter(self)
         if rowDelta() > 0 {
             var indexPaths = [NSIndexPath]()

        return Place(text: "You're standing in a giant hallway.", actions: [Action.hallwayToDiningRoom()], npcs: nil, nextPlace: nil)
    }
    

    static func diningRoom() -> Place {
        return Place(text: "Oh, a dining room.", actions: [Action.goToBathroom()], npcs: nil, nextPlace: nil)
    }
    
    static func diningRoomBack() -> Place {
        return Place(text: "Oh, a dining room. Again.", actions: nil, npcs: nil, nextPlace: nil)
    }

    static func bathroom() -> Place {

    func resetGame() {
        game = Game(title: "Camira - The Game", subtitle: "An sample adventure", initialPlace: Place.start(), player: Player.main())
        datasource = Datasource(game: game)
        timer = NSTimer.scheduledTimerWithTimeInterval(1, target: self, selector: "tick", userInfo: nil, repeats: true)
    }
    
    override func viewDidLoad() {
