Demo overhaul and validation

- Added gitignore entries for miscellaneous untracked files
- Updated ruby version to 2.1.2 (should work!)
- Added rbenv-gemsets for rbenv's
- Renamed rst files for all lowercase for consistency with underscore
  naming conventions
- Added all *.rst files to rake doc:build task
- Added images of expected vbox network configuration for verification
- Also added to gitignore and the exclude list for the tar occam archive.
- Moved demo operations into rake tasks.
- Vagrantfile is now templatized in lib/tempates
- Added a lib/helpers library
- Added a lib/tasks/demo.rake task list
- Added required Gems.
- Added default constants to Rakefile
- rake demo:init now completes _all_ demo tasks up to and including the
  initial puppet run on the ops node.
- Includes a working set of demo local hiera files
  A working set of hiera files are now in lib/files/exmples/demo/local.
  The files are copied into the #{ROOT}/local directory for use during
  demo:init. If an existing set of local files is found, they are left
  alone. The user is warned that their custom locals may not work with the
  demo.
- Added a validation task. Attempts to validate essential components in the
  environment for running the demo.
- Apps are now checked out from github with rake apps:init task. This
  requries a new naming convention. Apps are to be named
  github_username/occam-$appname. So the havana-cloud app would be named
  att-innovate/occam-havana-cloud and would be checked out into the
  puppet/apps/havana-cloud directory.
- Added rake apps:clean command that will remove the specified app or
  all mananged apps. e.g. rake apps:clean[havana-cloud] will remove the
  havana-cloud app.