- Disable shared folders and rsyncing in Shanty created vagrant boxes.
  http://docs.vagrantup.com/v2/synced-folders/basic_usage.html

  Vagrant.configure("2") do |config|
    config.vm.synced_folder ".", "/vagrant", disabled: true
  end
- Wrap exception handlers around the commands at the top level of CLI so that
  when unhandled exceptions happen we can display a sorry message to the user
  and give them instructions for reporting the issue. We might even want to
  have it post to github to create an issue when this happens irrespective of
  the user so that we are notified we need to handle another failure case. We
  might want to use some of the description provided by bundler,
  http://bundler.io/issues.html
- Add output to explain next steps after "shanty init"
- Extract all options from template files, move to default template files
  - Search user's config files for overrides on any default configs
  - Add documentation for all allowed config values
- Build a template/skeleton feature where a user could provide via the
  commandline a URL to a template/skeleton to use to aid in getting sane
  default config values for their environment. For example reachlocal could
  have one and that could have all the defaults for RLPC minus the username,
  password stuff.
- Add shanty lint functionality that verifies the required .shanty.yml config
  exists, the provider config exists, and that the required fields in those
  configs exist are have valid values.

- Move the work inside of the Vagrant box from happening in /vagrant to
  instead happen in the vagrant users home directory. The reason being that
  /vagrant is by default a mount to a shared directory and we do not want the
  project to be worked on in that shared directory.
- Disable shared folders and rsyncing in Shanty created vagrant boxes.
  http://docs.vagrantup.com/v2/synced-folders/basic_usage.html

  Vagrant.configure("2") do |config|
    config.vm.synced_folder ".", "/vagrant", disabled: true
  end
- Wrap exception handlers around the commands at the top level of CLI so that
  when unhandled exceptions happen we can display a sorry message to the user
  and give them instructions for reporting the issue. We might even want to
  have it post to github to create an issue when this happens irrespective of
  the user so that we are notified we need to handle another failure case. We
  might want to use some of the description provided by bundler,
  http://bundler.io/issues.html
- Add output to explain next steps after "shanty init"
- Extract all options from template files, move to default template files
  - Search user's config files for overrides on any default configs
  - Add documentation for all allowed config values
- Build a template/skeleton feature where a user could provide via the
  commandline a URL to a template/skeleton to use to aid in getting sane
  default config values for their environment. For example reachlocal could
  have one and that could have all the defaults for RLPC minus the username,
  password stuff.
- Add shanty lint functionality that verifies the required .shanty.yml config
  exists, the provider config exists, and that the required fields in those
  configs exist are have valid values.

Add task to move work to users home dir.
Add task to move work to users home dir.

I did this because I didn't want to forget that we need to move the work out
of /vagrant and into the vagrant users home directory.
