 		}
 		return actions
 	}
-	
-	func tableView(tableView: NSTableView, tableColumn: NSTableColumn?, row: Int) -> AnyObject? {
+
+    // MARK: NSTableViewDelegate
+
+	func tableView(tableView: NSTableView, viewForTableColumn tableColumn: NSTableColumn?, row: Int) -> NSView? {
+		let _cell = tableView.makeViewWithIdentifier("PersonView", owner: self) as? NSTableCellView
+		guard let cell = _cell else {
+			return nil
+		}
 		let conversation = (conversationList?.conversations[row])!
-		print("gothere \(row)")
 		
 		// Propogate info for data filling
 		let a = conversation.messages.last?.user_id

		super.loadView()
		
		tableView.registerNib(NSNib(nibNamed: "PersonView", bundle: NSBundle.mainBundle()),
									forIdentifier: PersonView.className())
		
		Notifications.subscribe(NSUserDefaultsDidChangeNotification) { note in
			

		let sub = (a != b ? "" : "You: ") + (conversation.messages.last?.text ?? "")
		let time = conversation.messages.last?.timestamp.relativeString() ?? ""
		
		cell.objectValue = Wrapper<PersonView.Configuration>((img, ring, ind, name, sub, time))
		return cell
    }

    func tableView(tableView: NSTableView, heightOfRow row: Int) -> CGFloat {
