Add the settings lib. Add page versions. Refactor a bunch of views to match.
Add model tests