Fix invalid column separator in gtf_test1.gtf file (spaces -> tabs)
Use the same name for the 'feature' column in GTF parser and serializer

If the column names are different, the values of the 'feature' column in an
input GTF file will have a different value when written to another file.
Update GTF parser to check for compulsory attributes

According to the spec[1], attribute values must start with "gene_id"
and "transcript_id"

[1] http://genome.ucsc.edu/FAQ/FAQformat.html#format4
Update GTF serializer to properly print compulsory attributes

Previously, attributes are printed as ".", resulting in a violation
of the GTF spec. This commit adds some checks to ensure that the compulsory
attribute keys are shown properly. Default values for these attributes
("") are still honored.
Update GTF serializer to write all attribute key-value pairs
Pass 'order' argument value properly when doing read() with selections

Previously, order was not passed, resulting in inconsistent ordering
if read() is called with multiple selections (e.g. selection='chr1'
and selection=['chr1'] will produce different orderings).
Update default order in read() to be '' (empty string)

read() should not impose a defined ordering to the user. There are places
where read() is called without allowing the user to change the default ordering
(e.g. in the SQL parser). By using '' as the default ordering, we preserve
whatever ordering the user has, rather than forcing it to 'start,end' (which
are not always desirable).
Keep 'score' column value as strings in GTF files

According to the spec[1] and UCSC[2], a dot ('.') is a valid column score
value. Rather than changing '.' to 0.0 (which may mean different things),
preserving the original value as string seems preferable (less surprise
when parsing).

[1] http://mblab.wustl.edu/GTF22.html
[2] https://genome.ucsc.edu/FAQ/FAQformat.html#format4
Remove 'assembly' argument in GTF test and update comment

Tested GTF files do not seem to be of the 'sacCer2' assembly.
Add round trip test for GTF files
Update gtf_test1.sql to reflect changes to GTF parser and writer
Add new GTF test case

The test case contains optional attribute key-value pairs and
both '0.0' and '.' as the 'score' column values. This is mainly
for testing round-trip conversion of the GTF format.
Merge pull request #1 from bow/patch_gtf

Round-trip conversion for GTF files and other adjustments to the track package.