Add script used for backing, encrypting, and copying the DB to S3

* Will be scheduled as a cron job
* Each application will have its own backup script
* Will use the `scripts/env.yml` file that will be generated
add example vars for S3 Backups
Use variable to store the git repo URL for the staticsite

* Makes it easier to customize roles for specific projects
Create directory for unicorn service configuration, fix upgrade cmd

* The upgrade command in this multi-server example was broken because
  it did wait 60 seconds for the previous process to die before trying
  to spawn a new instance. This would cause the upgrade command to
  fail, defeating its purpoe
Use `railsapp_encryption_password` env variable to encrypt DB backups

* This allows a custom encryption key to be set on a per-app basis,
  making individual apps more secure.
Create the Railsapp top-level directory to be owned by the deploy user
Separate bootstrapping and installation ansible playlists

* Separating them makes it easier to provision machines correctly via
  vagrant and control the actions performed on hosts.
  * the "bootstrap" playbook overwrites the sudoers file and makes the
    deploy one of the only users that can sudo in. This breaks vagrant
    which expects a "vagrant" user to be sudoable.
  * "bootstrapping" just involves the bare necessities: setting the
    locale and creating the foundation for any other playbooks
  * the "intall" playbook takes a server from bootstrapped to deployed
    by installing all the other services and tools needed.
* Also makes it clear what's vagrant and what's ansible
  * The bootstrap playbook is run by the Vagrant ansible provisioner
    to make things easier
  * everything else is run by `ansible-playbook` like it's a real
    server.
* Updated the application where "vagrant" was the user, replaced it
  with "deploy"
Create role to deploy railsapp (capistrano style)

* The deployment pattern for Rails applications follows the patterns
  established by Capistrano:
  * Grab a temporary copy of the latest revision on a branch
  * Reset the cached copy and clean it up
  * Get its revision number and copy it to a specific release dir,
    which is based on the timestamp on the server
  * Symlink bundler's vendor directory so that it's in /shared/vendor
    * which will mean bundles will be shared between releases and
      bundler will have to do less work.
  * Install gems via bundler
  * set symbolic links to shared config, logs, data, and tmp files
    * also share the `unicorn.rb` file, which will be used to config
      unicorn.
  * delete any checked out "env" files, generate new ones
  * create a `public/assets` folder and precompile and compress assets
  * Run any database migrations
  * Symlink the current release to the `current` version
  * Record the deployment to NewRelic if a `newrelic_license_key` has
    been provided
  * Cleanup any old releases to keep the server clean
Create role to configure Railsapp to use the unicorn service

* The unicorn service expects a `.conf` file in `etc/unicorn`, which
  it reads for the environment and root path of the rails app. It then
  calls `unicorn_rails` (using `bundler exec`) and reads the rest of
  it configuration from `config/unicorn.rb`
* This role generates `config/unicorn.rb` and `railsapp.conf`
* It also register a handler called "restart railsapp-unicorn", which
  gracefully upgrades the server.
Create role for configuring nginx for the Railsapp

* Configures Nginx to allow underscores in headers, redirect all HTTP
  requests to HTTPS, set asset caches to last as long as possible,
  connect to the upstream unix socket created by unicorn, and serve
  basic error pages
Create role to generate S3 configuration specific to Railsapp

* Different apps might have different S3 credentials, so generating
  a specific configuration per-app is future-proofing.
add secret key base specific for Railsapp

* secret_key_base is something new to Rails 4.
Include railsapp environment variables and Vagrant configurations

* whoops
final update of vagrant stuff, then ignore it