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 null=True on CharFields and others

Reviewed CharFields, EmailFields, TextFields, etc.

Some fields were left unaltered:
* proxy_class rely on unique=True, and that only works sensibly with
  null=True
* The same is true for Product's UPC
* Because order's Line model UPC field usually gets fed the Product's
  UPC, it's least intrusive to still allow null=True there
Subtle changes to handle '' instead of None

Tests failed on a few occasions, because CharFields were set to None or
expected to be None.
Filter by date range in Dasboard/Reporting, if provided
Filter different reports properly
Add start and end times to vouchers
Make test_datetime timezone aware
Merge branch 'master' into issue/1068/voucher_improvements

Conflicts:
	oscar/apps/voucher/abstract_models.py
Add shipping offers as voucher options
Strip whitespace from start/end of search term

Remove whitespace from beginning and end of search term (UPC and Title)
in dashboard
Use a python3 print compatible statement.
Use new style exceptions.
map returns an iterator in python3.
Use new style exceptions.
Python3 doesn’t like integers prefixed by 0.
Don’t compare int and None.
Simplier item count.