Split the adam-commands module into adam-cli and adam-core

This commit bumps the version to 0.6.0.

The new dependency tree is linear -- 'adam-cli' depends on 'adam-core' depends
on 'adam-format'.

All CLI code is now found exclusively in the adam-cli module. There is no
longer any dependencies in adam-core for command-line parsing, etc.
The AdamMain class has been moved from adam.AdamMain to adam.cli.AdamMain.
The 'commands' package has been renamed to 'cli'.

The CompareAdam code has been split with the back-end code in adam-core and
the cli code in adam-cli.

Only the adam-cli module create a self-executing jar for use on the
commandline.

Aux files like the README and Jenkins tests have been updated.
disambiguate isMismatchBase(), other small cleanups
Factor out SnpTable, fix crash in SNP handling
Print a log message on startup to more easily tell runs apart
Improve BQSR performance by reducing GC pressure