Refactored scroll view controller

Refactored scroll view controller, so that it’s now datasource-driven
and delegate-based.