modified and documented parse_fasta()

I set the default behaviour to unmodify the label line for 3 reasons:
1.  I thought it is a better default to change nothing than do splitting
2. The `SequenceCollection.from_fasta_records` is already doing the splitting. Additionally, this will keep the words after the first whitespace in the label line as `description` 

I also changed label_to_name to label_func for clarity - to be consistent with the variable name in this function and the fact that `label` returned can contain both ID and description.

Just my personal opinion. Pls let me if this is ok.