Optimize TournamentListAdapter

- Use binary search in getSectionForPosition()
- Make calculateSections() static
- Save frequently looked up length field in local variable