Use NullPool to ensure DB connections close.
Install pip packages from requirements.txt.
Add backup scripts to run before shutdown.

* msm-manage-pre-shutdown-backup.sh checks to make sure
  instance state is 'running' before kicking off actual
  backup. Also, updates state in DB and memcache before
  and after backup.
* msm-pre-shutdown-backup.sh stops minecraft server, then
  performs backup to S3.
Run cronjobs as 'minecraft' user.

* Running 'msm-track-active-players' cronjob as root resulted in
  'server.log.offset' file being owned by root. Now, it will be
  owned by 'minecraft', allowing 'minecraft' user to run backups.
Don't need 'sudo' to call msm-pre-shutdown-backup.sh.
Change state names in msm-manage-pre-shutdown-backup.py.
Remove backup functions from init.d shutdown script.

* Syncing working files and backing up archives now happens
  before shutdown process is initiated.
Add msm-redis-listener.py.

* Listener will run continuously and wait redis pubsub messages
  on the 'command' channel. When it receives the 'backup' command
  from Minecloud webapp, it runs the msm-manage-pre-shutdown-backup.py
  script.
Configure supervisor to run 'msm-redis-listener.py'.

* Use Ubuntu package of supervisor, rather than installing with pip.
Add get_redis_url() to msm-redis-listener.py.

* When supervisor starts from init.d, the /etc/environment
  variables are not in it's environment. So, I'm manually
  reading the REDISTOGO_URL env var in msm-redis-listener.py.
Add msm-update-download-url.py.

* Minecraft has new download URL for each new version. MSM
  doesn't handle this right now, so this script is a temporary
  fix until it does.
Update AMI in build-ami.py.
Switch to my fork of minecraft-server-manager.
Don't run msm update.

* Otherwise, it will overwrite changes in my MSM fork.
Read env vars from /etc/environment, if necessary.

* Needed for scripts started without /etc/environment
  variables already set in environment.
Pass environment variables to backup script.

* Needed to run msm-manage-pre-shutdown-backup.py.
Exec `msm update` now that I've forked MSM.

* Updates should no longer overwrite my changes,
  since I changed the UPDATE_URL in my MSM fork
  to point to itself, rather than the original repo.
Upstrem pull from perth-test branch