Revert "removed provision-controller.sh"

This reverts commit 14bbd5516e703ec3927bd2da1bdbc35689390201.
Merge pull request #579 from opdemand/remove-provision-script

Revert "removed provision-controller.sh"
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

Don't save user's original GEM env, just delete vagrant's GEM env from the ruby ENV var

Added global 'dsh' shortcut for dshell and documented it

Fixes in _post_chef_run.sh

Replace pty with IO.popen for osx compatibility

Revert to capturing pre-vagrant gem env so that shelling to bundle-based commands work

Revert to using provision_controller.sh. Moved Vagrantfile out of root. WIP for @bacongobbler to test.
Merge pull request #528 from tombh/vagrant-provisioning

changes to Vagrant provisioner and environment to accommodate new containerization architecture
fix merge comments from #528
Merge pull request #580 from opdemand/merge-fixes-from-528

fix merge comments from #528
change box_url to be the same as controller
change box name to deis-controller for consistency
s/controller/server/g for consistency

this is a base deis box. Since it applies to both controllers and
nodes, there's no need to name the vagrant box one or the other.
This allows users to download the box once and never have to
download it again.
change default box_url. Fixes #581
Merge pull request #582 from opdemand/change-vagrantfile-template-url

change box_url to be the same as controller
Updated EC2 AMIs from prep scripts.
Updated Chef references to 11.8.2.
Merge pull request #584 from opdemand/chef-up

Updated Chef references to 11.8.2.
Merge pull request #583 from opdemand/new-amis

Updated EC2 AMIs from prep scripts.
fix buff-extensions downgrading
Merge pull request #585 from opdemand/fix-buff-extensions

fix buff-extensions downgrading
Updated submodule SHAs.
update DO readme to match correct script name
be a little more explicit with the creation of snapshots