Adds private networking for Digital Ocean

Enables private networking for new droplets if the region supports it.
Fails gracefully if not: https://developers.digitalocean.com/droplets/.

> private_networking Optional, Boolean, enables a private network interface if the region supports private networking
Updates dop version to support private networking and scrubbing
set min username length to 4
typo: must be >= 4
Merge pull request #594 from Springest/private_networking_support

Adds private networking for Digital Ocean
update dop to v0.1.6
Merge pull request #631 from opdemand/add-custom-user-auth

set min username length to 4
update registry submodule
Merge pull request #633 from opdemand/update-registry

update registry submodule
bump registry submodule
Update submodule SHAs.
Various changes to accomodate running tests (including integration tests)
on a vagrant installation. Includes detection of TESTING environment in
settings.py. Raising of deis user permissions in provisioner to allow
test DB creation. Extending test setup to use installations with
existing superuser. Updating docs to desribe testing procedures.

Amend Travis config to create the testing DB with the 'deis' role

Add 'vagrant' to PROVIDER_MODULES in settings.py to ensure consistency with local_settings.py. And therefore increase falvors count in tests. Also updated DATABASE dict to not use a password in testing env.

Get travis to create databse with name 'deis', not 'deis_testing'

Create deis postgres role before creating DB in travis.yml

Don't surround psql commands in double quotes in travis.yml

Resort to switching postgres role and db name depending on testing env

Flake error for line length

Changes to Vagrant provisioner and environment to accomodate new
containerisation architecture.

Major changes include:

* Provisioning is done entirely with `vagrant up`. This has not been
easy and feels inelegant. Vagrant modifies the GEM_PATH env variable
meaning that it has to be saved and injected into subsequent `knife`
commands.

* Vagrantfile.local's symlinking magic is no longer needed

* DB reset now uses JSON fixtures rather than SQL.

* New ./dshell script for conveniently getting a terminal in a
container.

* There is an accompanying change in the cookbook which causes the
docker daemon service to delay its init until after the upstart
'vagrant-mounted' event has been triggered.

Updated readme to state correct username and pass created by DB reset
script.

USe new name for Vagrant Box to force downloading new box. Other bug
fixes.

Make code that gets user's default shell OSX compatible.

Use much simpler ENV['SHELL'] to get user's shell in Vagrantfile

Added script to install dev dependencies in deis-server. Used to run tests.

Install requirements.txt and dev_requirements.txt for Travis CI

Various changes to accomodate running tests (including integration tests)
on a vagrant installation. Includes detection of TESTING environment in
settings.py. Raising of deis user permissions in provisioner to allow
test DB creation. Extending test setup to use installations with
existing superuser. Updating docs to desribe testing procedures.

Updates to accomodate new containerise code

Previous rebase had missed out some changes
Post containerize changes. Still need to get integration tests working
Change user to testing db user to postgres for Travis. Removed _pre_vagrant script.