Add updated submodule references for master
Merge pull request #1490 from galthaus/pull-req-master-86818e726a

Start porting tempest to cb20 fix some nits for ubuntu start working rh62 [4/7]
Add updated submodule references for master
Merge pull request #1494 from galthaus/pull-req-master-3e5a530cac

Modify redhat barclamp dependencies for cb20, add package cleanup, bdd fixes [6/9]
Allow something besides dellcloudedge to be used as the "origin" account.
Update Sledgehammer build to use a different EPEL mirror
Automagically figure out required proxy parameters from http_proxy
De-awkify barclamps_in_branch and make it more generic.
Update install to always run as root.

This makes like simpler.
Make sure we always have a gem site

gem sometimes chokes otherwise.
Clean up README.online-install a bit.
Epic dev rewrite to rationalize remote, release, and branch handling.

This patch migrates dev from repo metadata v.1 to v.2.
The following big changes are present:

 * Uniform remote handling across all Crowbar repositories.
   The dev tool now enforces that git remotes across all Corwbar
   repositories point at the same thing.  All remote handling should
   be performed via ./dev remote commands, and not git remote
   commands.
 * Remotes are priority sorted.
   Each remote managed via dev has an assigned priority from 1 to
   100, the lower the number the higher the priority.  The remote you
   cloned Crowbar from (previously known as "origin") has priority 5,
   the remote you back things up to (your personal remote) has
   priority 95, and everything else defaults to priority 50.  Remote
   priorities can be changed on the fly -- see README.dev-and-workflow
   for more information.
 * dev assures that tracking branches point at the proper remotes.
   Local branches that exist in remotes will be configured to act as
   tracking branches pointing at the highest priority remote that has
   that branch. Any time you update a remote (by adding, removing, or
   changing priority) or run a ./dev fetch the tracking branches will
   be updated.
 * dev does not have a hardcoded dependency on dellcloudedge.
   You can clone and setup from any crowbar repository, and dev will
   handle making sure that all the barclamps are cloned from the same
   location.
 * You can push and pull from any remote that comes from github.
   By default, pull-requests-prep and pull-requests-gen will target
   the highest-priority remote.  You can change which remote you are
   targeting with the --to parameter.
 * You can easily merge changes from any configured remote unto your
   local branches.  By default, sync will pull in changes from the
   highest priority remote.  You can change the remote that will be
   merged in with your local branches using the --from flag.
 * Enhanced paranoia dealing with local updates to submodule
   references.
Add a helper to check and see if this is a flat release.
Add pinning and unpinning for barclamp references.
Flatten
Have __pin_release check out barclamps directly.
Fix up barclamp-switching logic to do the right thing.
Flatten
Oops, actually record the new build when it changes.
Have pin_release call switch_release to maybe update HEADs in barclamps.