Convert site to a SPA

Fixes #3
Fixes #2