Merge pull request #235 from MosesMendoza/maint/master/update_readme_for_templates

Make README.md explanation of templates more verbose
(RE-477) Allow any vendor_gems task access to package:vendor_gems

For razor we will be invoking bundler from within rake from within jruby to
fetch the dependencies of the Gemfile. This will be accomplished by using an
auxiliary vendor_gems task called package:jruby_vendor_gems. In order for that
task to invoke the package:vendor_gems task, it must be defined even if the
pre_tar_task isn't equal to package:vendor_gems. This commit updates the task
to be defined if any pre_tar_task is defined.
Merge pull request #236 from haus/ticket/master/re_477_define_vendor_gems_task_for_all_pretar_tasks

(RE-477) Allow any vendor_gems task access to package:vendor_gems
Initial work on reorg into classes
Bring in changes to tar and util
Move under packaging
Correct load path modification in packaging.rb
Add version utils
Continue with params
Initial attempt at setting a PROJECT_ROOT
Config is a class, and Params is its own module
Initial support for loading from build defaults

Rename various methods for sanity
Try to break down into smaller methods, for readability
Define default configs in config.rb, because its better than other places
Enable loading defaults from default configs, so we have a way to get data
Add support for loading from envvars
Add util to cd somewhere and do stuff
Initial breakout of tools
Go to project root to use git
Remove get_release method
Improve comments in packaging/config.rb

Signed-off-by: Moses Mendoza <moses@puppetlabs.com>
Make :string default for envvars

remove explicit :type => :string from packaging/config.rb, it is default now

Signed-off-by: Moses Mendoza <moses@puppetlabs.com>
Add erb methods, get_binding to Pkg::Config

Currently all the old @build instance variables are set as essentially global
rake application instance variables in order to allow our erb templates to
reference them without qualification. This is dumb. In the new world, we'll
take an optional binding when ERBing, as added in the commit. This commit also
adds a new Pkg::Config.get_binding method to get the class variables of
Pkg::Config, which is what we'll pass to the templates.

Signed-off-by: Moses Mendoza <moses@puppetlabs.com>