[ADAM-327] Adding Gene, Transcript, and Exon models

Not yet ready for merging. 

Preliminary support for gene models from GTF files.
Just to comment specifically on your questions:

* I personally find having multiple CDS pieces to be less clear.  But it's easy enough to understand so I don't feel strongly.

* I imagine it's not necessary to model 5' vs 3' UTRs, as you could compute which is which.  Unless there is some additional biology you want to incorporate down the line.

Additionally, would it be possible to insert arbitrary BaseFeature objects as well?  This could help future-proof a bit in a more generic way.