A basic, reusable and expandable UITableViewDataSource class