A replacement for `UITableViewDataSource` and `UITableViewDelegate`