Add nginx reverse proxy to apache in Vagrant VM

Accessible at port 9001.
Add gunicorn to Vagrant VM
Automatically start dev server in Vagrant VM
Docs: Explain changes to Vagrant VM
Remove unused permissions

There's unused permissions on orders and partners that interfere with
our permission-based dashboard.
Introduce permission checking logic and decorator

Allows passing a list or two-tuple of lists of permissions that are
checked against the user.
Add support for permission checking to core Application class

Allows specifying default permissions and individual permissions based
on view names.
Move dashboard apps to new permission handling

Effective permissions are unchanged apart from catalogue views, which now
also allow users that have both partner.dashboard_access and
catalogue.change_product as permissions.

Includes tests.
Filter dashboard menu based on users's permissions

Introduces a default filter function that only returns dashboard menu
nodes that the user can access.
Add basic tests for dashboard filtering
Handle permissions for ProductDeleteView

Required updating tests.
Handle permissions for ProductListView

Added tests as well.
Handle permissions for ProductCreateUpdateView
Fix bug in permissions for dashboard.catalogue app

The default permission was incorrectly set. This also masked the missing
entry in the permissions_map for editing products.
Drop fine-grain control with Django's default permissions

I've changed my mind on this and think we should KISS. So the support
for the catalogue.*_product permissions has been dropped from the stock
dashboard. Clear case of feature creep, and it's easily added if needed.
Add permission support to oscar.test

This will become commonly-needed functionality.
Add permissions support to dashboard order views
Bugfix for filtering in OrderListView

Seems like somebody forgot to use the date_to variable.
Add assertNoAccess test to ClientTestCase

Checks for both HTTP 403 and 404
Add tests for permission-based dashboard order views