feat: home page model and controller

Fixes #6