Added the FileLocator trait and two implementations.

This will make it easier to do relative addressing in a data-source independent way.
Added the CombinedFilter trait, which combines UnboundRecordFilter, a predicate and an Index predicate.

This is to support writing an "indexed" parquet Avro RDD, which can filter both records and index entries
at the same time.
Added new constructors to RangeIndex

These will allow initialization from File, InputStream, or ByteAccess values, the latter of which we'll need for the
indexed RDD.
Adding a FileLocator parameter to the ParquetPartition

This is to support reading from multiple Parquet files in the same RDD.
Added the S3AvroIndexedParquetRDD implementation.

Reads from an index file and loads ParquetPartition values, one for each
row group whose index entry passes the predicate given.

Right now, this only supports RangeIndex indices.
Separated out index and data-root locators for S3AvroIndexedParquetRDD
Adding ByteArrayByteAccess for local ByteAccess over Array[Byte]
Adding the ByteArrayFileLocator.

Used for debugging and testing, gives local access to an Array[Byte]
Adding OutputStream constructor to RangeIndexWriter

Allowing RangeIndexWriter to be wrapped around an OutputStream, which is useful
for testing in the short term.
Change the signature of addParquetFile to RangeIndexGenerator

Adding the ability to pass in a locator and a relative path to the RangeIndexGenerator method
addParquetFile, which makes it easier to generate coherent index files to use in the S3AvroIndexedParquetRDD.
Added a RangeIndex constructor which takes an Iterable[RangeIndexEntry]
Added FilterTuple implementation of CombinedFilter.

Simply wraps three different values in a single implementation of CombinedFilter.
Factored ParquetFileMetadata out of S3AvroIndexedParquetRDD.

ParquetFileMetadata is a wrapper class that contains all the information we need,
for extracting schemas or file metadata, or creating partitions, from a parquet file.
Passing tests for S3AvroIndexedParquetRDD.
Added IndexFlatGenotype to the ADAMMain class.
Fixed a bug in ByteArrayByteAccess.

We were skipping by length (and thus returning 0-length arrays), not by offset.  Oops.
Added support for missing entries "./." in the VCFLineConverter.
Making CombinedFilter serializable.
Adding a constructor to RangeIndex that takes a FileLocator.
Test S3AvroIndexedParquetRDD can pull out a single partition from a multi-rowgroup file.