Bug 974632

Create ~/.gem, owned by the gear user, for all cartridges.
To have user gems be installed in this directory, we now set $GEM_HOME
explicitly on all cartridges.

Subsequently, the Ruby 1.9 cartridge need not create ~/.gem.
Bug 974983

Set up $PATH so that executables installed by a gem can be found.
Resurrect file permissions tests that existed for v1 PHP cartridge

The tests now includes `~/.gem`, which is created for all cartridges.
See https://bugzilla.redhat.com/show_bug.cgi?id=974632
Remove unsightly comment
Moving Node classes into Runtime namespace
Removing UnixUser
Moving functionality into SELinux plugin class
Refactor code to call set_ro_permission/set_rw_permission instead of calling chown/chcon
Refactor code to use run_in_container_context/run_in_root_context calls instead of generically calling oo_spawn and passing uid.
Modify frontend httpd/proxy classes to accept a container object instead of indivigual properties
Explicitly create a group for the gear user and fail if group cannot be created.
Moving selinux and libvirt container plugins into seperate gem files
Added nsjoin which allows joining a running container
Temporarily disabled cgroups
Moved gear dir to /var/lib/openshift/gears for libvirt container
Moved shell definition into container plugin rather than application container
Make port-forwarding container specific.
  * SELinux container uses port-proxy
  * Libvirt container uses IP Tables
Fixing tests (assuming selinux container for now)
Changing File.join to PathUtils.join in node and common packages
Uncommenting cgroups
Fixing signal handling in oo-gear-init
Renamed package to Containerization instead of ApplicationContainerPlugin
Renamed OpenShift_ApplicationContainer_Class to container_plugin_class and made it a class variable instead of global
Moved run_in_root_context to ApplicationContainer since it is not implementation specific
Cleanup unused variables
Adding traffic control for selinux container
Fixing class/module namespaces
Fixing tests
Fixing rebase errors
Un-hardcode context in step_definitions/cartridge-php_steps.rb
Fixing paths that were broken when going from File.join -> PathUtils.join
Automatic commit of package [rubygem-openshift-origin-container-selinux] release [0.0.1-1].
Bug 970257 - Allow git@ urls

Also support reflog tracking, and the ability to deliver a commit from a fragment.  Perform a bit more URL validation on initial_git_url
Allow clients to pass an initial_git_url of "empty", which creates a bare repo but does not add a commit.  When 'empty' is passed, the node will skip starting the gear and also skip the initial build.  This allows clients that want to send a local Git repository (one that isn't visible to OpenShift.com, for example) to avoid having to push/merge/delete the initial commit, and instead submit their own clean repo.  In this case, the user will get a result indicating that their repository is empty.

Also resolves 977985 by removing the message.
Merge remote-tracking branch 'origin/master' into bug_970257_support_git_at_urls

Conflicts:
	node/lib/openshift-origin-node/model/v2_cart_model.rb
PULL_2005 added tests for adding supplementary groups when creating new gears in a node