Remove rails_env from foreman recipe

- When using capistrano-rails, it's already set by deploy:set_rails_env
Only touch nginx if deploy was successful

- Default template implicitly relies on current_path symlink with shared
  dirs also to have been setup. (Serving Rails assets)
Do foreman setup on publish instead of at the end

- If foreman setup chain fails at any step deployment don't risk calling
  clean up and log when a rollback is about to happen.
Rename *.cap to *.rake

- Following new Capistrano style (Which is more friendly to preexisting
  syntax highlighters)
Use vagrant and rspec for testing :metal:

- Vagrantfile setups up a Ubuntu Precise VM with git, rbenv, and ruby
  primed for deployment.

- Simple barebones test app is installed to /tmp/test_app and configured
  for deployment to Vagrant VM.

- Local tasks such as instantiating the test app can be tested with
  plain rspec, while deployment tasks on server can be tested using
  serverspec extensions.

- Add initial tests to check if Vagrant VM provisioned correctly and
  that test app can be created and deployed.