remove some boilerplate and add some tests
tweak optionals
root view controller should be a UITableViewController