Added a region-join implementation.

Fixes ISSUE #83.
- This allows for joining different types which are aligned to different
  ReferenceRegions
- A record will appear in multiple different places when it overlaps
  multiple different regions

For testing purposes, we've also added a 'cartesian join' implementation, which
operates by using the cartesian product operation on RDDs, followed by a filter.
This should be logically equivalent to the region join implementation here, but
is probably slow enough that we would only use it for testing in real-life situations.

Added SequenceDictionary.containsRefId to support the regionJoin operation.

An example of using the regionJoin method is presented in the new CLI command,
CalculateDepth.  CalculateDepth (accessible as the command 'depth' through AdamMain)
takes two arguments, an ADAMRecord file and a VCF (or equivalent) file, and calculates
the number of reads (the 'depth') from the ADAMRecord file which overlap each of the
variants given by the VCF.  It then reports, on standard out, the location and name
of each variant along with the calculated depth.

Adding comments.

Renamed some methods, some classes, and added extensive comments.
Merge pull request #117 from genomebridge/regionJoin

Add a "range join" method.
Added switches to spark context creation code to allow buffer size increase and increased logging for profiling.
Merge pull request #161 from fnothaft/context-debug

Added switches to spark context creation code
Add util.BuildInformation and buildinfo command

This is a first attempt at #41.

- adam-core: Add git-commit plugin to POM file. The file is generated
is `adam-core/src/main/resources/git.properties` and the info is
available in the object
`edu.berkeley.cs.amplab.adam.core.util.BuildInformation`.
- adam-cli: Add the command `buildinfo`.
Merge pull request #138 from smondet/git_properties

Display Git commit info on command line
Remove extraneous initLogging() calls
Upgrade to Spark 0.9 and Scala 2.10
Workaround apparent changes to implicit resolution
Upgrade to Java 7. Resolves #134
Upgrade to Parquet 1.3.2. Resolves #94
Merge pull request #78 from jey/spark-0.9-upgrade

Upgrade to Spark 0.9 and Scala 2.10
Refactoring FASTA work to break contig sizes.
Merge pull request #160 from fnothaft/fix-fasta-large

Refactoring FASTA work to break contig sizes.
call PluginExecutor in apply method, fixes issue 164
Merge pull request #165 from heuermh/plugin-listdict-fix

call PluginExecutor in apply method, fixes #164
fix typo in log4j config, but junk is still spewed to stdout
Remove existing BQSR implementation
Make quality scores into ints
Scaffolding for BQSR implementation