Add docker containers for running spec and unit tests.

This will hopefully give us a solid way to run jenkins tests without a lot of
environment overhead, the container takes care of all the ruby/devel setup, and
a completely clean environment for every run. We can also now run multiple spec
tests jobs on one host system as there's no more fighting over a specific host
port.

Includes a candlepin checkout at /candlepin with all current ruby and java deps
installed to dramatically cut down on the time and bandwidth. Everything should
get updated when we run so changing deps should not be a problem, but it may be
a good idea to rebuild these from time to time. (script included see
rebuild.sh)

You can mount your host's dev checkout as a volume at /candlepin-dev when you
run if you'd like to run tests against code you're working on. I hope to add
oracle / mysql containers soon, which would mean you don't necessarily need to
set all of these up on your main system anymore.

candlepin-base container just sets up the development environment without a
database and is capable of running the unit tests successfully. It uses
supervisor to manage postgres and tomcat services as systemd is not container
friendly yet.

candlepin-postgresql layers on top of base and adds in postgresql setup,
default command runs the rspec tests.  A slightly modified version of
postgresql-setup is included as the stock one in F20 tries to read values from
systemd config which we don't have here.

Option included to open a shell once tests are complete, or you could skip
the tests to just get a shell into the dev environment you setup.
Enhance docker test script to checkout arbitrary git refs.
Symlink keystore for tomcat more reliably.

Previously we would only do this if forcecert was 1, however on a first run for
a devel system, forcecert may not necessarily be set, but certs still get
generated because they do not yet exist. The keystore would not be linked and
tomcat would not run.
How about we actually run the rspec tests?
Copy server logs out after rspec if artifacts volume exists.
Add sshd, remove tomcat wrapper in Docker test containers.
Better postgresql auth setup.
Trim modified postgresql-setup script.
Append RSPEC_OPTS env variable to rspec options.

RSPEC_OPTS="--no-color" buildr spec, for example.
Oracle docker container almost functional.
Oracle launcher script for within containers.
Move Oracle container scripts to internal dl location.
Add shebang to Oracle launch script and run Oracle as root.
Set up shell to run profile and rc files.

Also set SUPERVISOR=1 in a .candlepinrc file as this setting
will always be necessary when running in Docker.
Run Oracle for Docker tests.

- Place JDBC driver in JAR repo
- Change the Oracle start script to not daemonize
- Change the Oracle http port to something not used by Tomcat.
Set Oracle mode by default on Oracle containers.
Prevent ugly backtrace when no matching specs are found.
Consumer events were missing installed product info

Lazily loaded hibernate proxies weren't loaded because
the jackson hibernate4-module wasn't used in EventFactory
Merge branch 'master' into dgoodwin/docker-testing

Conflicts:
	server/bin/deploy
Fix merge error in deploy script.