fix UIKit/Swift bug by reimplementing UITableViewController

Even though UITableViewController.init(style:) is the supposedly the designated
initializer for UITableViewController, Swift does not like the fact that
init(style:) calls UIViewController.init() which in turn calls the subclass
implementation of init(nibName, bundle). This causes all variables to be
reinitialized to default values which makes for "fun" when subclassing
UITableViewController in Swift.

Does not yet implement `refreshControl`.
support UIRefreshControl in SwiftTableViewController