Merge pull request #417 from kaedroho/wagtailcore-cleanup-3

Cleanup a few methods of UserPagePermissionsProxy
output a DeprecationWarning if get_page_modes has been overridden
Merge pull request #419 from gasman/serve_preview

Use serve_preview() rather than serve() for all preview / moderation / view_draft actions
Use a multi_match query instead of a query_string query
Minor optimisation when building single field queries
Added __repr__ to EditorsPicK
Make sure all editors picks are resaved on edit. Fixes #408

As we are setting the sort_order manually. The formset doesn't think the editors pick has changed so doesn't save it.
This caused a SQLite test to fail as NULL is always greater than any integer causing ordering to be incorrect.
Improved test_post_reorder test
Merge branch 'issue/408' of https://github.com/kaedroho/wagtail into kaedroho-issue/408
Merge branch 'kaedroho-issue/408'
Update Page.route API so that it returns a Page instance rather than an HttpResponse; catch the latter in the 'serve' view for backward compatibility
Catch the deprecation warning for old-style routes during unit tests
Implement before_serve_page hook
Add PageViewRestriction model, and apply permission check in the 'serve' view
simplified get_ancestors logic
Delegate serving of the 'password required' response to the Page model
implement form submission logic for the password form
Keep track of passed page view restrictions in the session
add public/private indicator on explorer and page editor
Implement (mostly-empty) views for setting view restrictions, accessible from the permission indicator