Change persist point for lazily persisting home page lists

They're still lazily persisted, but rather than being persisted on access (e.g. HomePageList.get) they are persisted on use (e.g. home_page_list.add_item, home_page_list.remove_item, home_page_list.reorder_items).  This avoids a new org with not home page list trying to write to the db when we visit their frontend page, which is a problem because the DB is readonly on production frontend.
Data migrations to convert contacts and offices to home page lists
Merge pull request #528 from alphagov/contact-ordering-fixes

Contact ordering fixes