Added the "tags" command, and parsing for BAM attributes.

Added code (in Attribute and AttributeUtils) to parse attributes -- the optional fields at the end of a SAM record -- from the string which is stored in the ADAMRecord.

Updated the adam-cli project with a command, 'tags', that reads an ADAMRecord set and prints the total set of tags found in the set, along with the number of times each tag appears.
Adding quantitative comparisons to CompareAdam

This is a major update and extension to the "comparison" framework in CompareAdam.

First, an extension to CompareAdam has been created, that allows for interchangeable "generators" of
pairwise read-comparison metrics.  We've added our own implementations of a few basic metrics, found
in GBComparisons [Carl, that probably needs to change its name...], for things like duplicate flags,
position of alignment, base qualities, and map qualities.  These metrics are then aggregated
using an aggregator (of which the HistogramAggregator is the prominent example at the moment).

CompareAdam now runs a set of these metrics over the reads from a given pair of files, and writes output
suitable for graphical report generation using the plots.R script.

The code for this traversal-and-metric-generation has been oved to a class in adam-core, called
ComparisonTraversalEngine.

Finally, a new CLI tool has been added, "find_reads", supported by the class FindReads.  The find_reads
command is written to facilitate diagnostics on ADAM files which differ in one or more metrics.  It takes a
pair of ADAM files, the names of one or more generators, and filter expressions on each of those generators,
and produces the set of read names from the pair of files whose generated metric values fall within the
corresponding filters.
Added AdamContext.referenceLengthFromCigar
Added the TrackedLayout class.
Added filterByOverlappingRegion to AdamRDDFunctions
Added the VizReads tool to CLI.

VizReads is a tool for interactive or static visualization of aligned reads along the genome.