Re-enable .travis.yml

Either due to the recent specification cleanup or due to
changes on travis-ci.org itself, the build is now passing.
Add git to travis build
Split unit tests into individual builds

See: http://about.travis-ci.org/blog/2012-11-28-speeding-up-your-tests-by-parallelizing-them/
Simplifying .travis.yml

Previous build with multiple TESTBUILD files
failed with out of space and other errors. Until
the build can be sped up and simplified, a simple
compile test (and for Python, unit tests) probably
suffices.
Fix python test suites
Fix fstest/model.py 'compile' issues
Add __init__.py to test packages
Removing post-argparse invalidated tests

The move to argparse made many of the clitests unnecessary
since we no longer have our own `Arguments` class, or use
the `_likes()` method.
Fix self.ctx.OMERODIR usage and db.py test

The ctx field for plugins was making undue use of the
OMERODIR global variable. These have been replaced by
a call to `_cwd(None)` which internally uses `self.dir`
which is usually initialized with `OMERODIR`. This makes
it possible to "re-home" a test.

With this change and the minor fixes to clitest/db.py
all of db.py is now passing.
Fixing or removing other broken Python unit tests
Lowering logging to WARN for the unit tests
Refactor suite runners

Not using unittest.main() was causing sys.exit
not to be properly called on failures. Now a
helper method is available in xmlrunner.main
to "do the right thing".
Make python failure a build failure for Travis
Enable cpp unit tests
Re-enable apt-get update in travis.yml
Close new table in populating metadata.
Fix selection of wells and grid synchronization.
Fix selection when key down.
Add method to check if valid well.
Improve handling of selected cells grid.