Addressed silent issue with fasta definitions

Encountered a silent issue where the tiles for chromosome U where
generated with wrong chromsome name for chromosome U ('>chru   md5')
because it had an invalid definition line where a semicolon was missing
between two columns. We are now throwing an exception in those cases to
alarm the user that the input data has a problem.
Removed chrom_name from definiton fields

The first string of any fasta definition line inside a genomic reference
file is the chromosome name prefixed by a '>'. Unfortunately this
doesn't get delimited by a ';' and screws up the parsing of the column
variables (i.e. '>chry type' instead of 'type'). From now on we remove
this part of the string before splitting the definition line into
fields.

Also moved call to GenomeTiler#definition_to_fields out of a loop
because the definition string doesn't need to be split for every window.
Only create windows of specific chromosomes

By using the option :filter_chr it is possible to specify that windows
only for a certain chromosome will be created.
Merge pull request #1 from djurczak/dev

Merging in changes from dev branch