Fasta: Throw rather than exit on error.
An exception can be caught while an exit can't. Thus we can test it. Moreover some consistency is introduced: Fasta and OnlineFasta will throw a invalid_argument in case of problem with the input file (either in opening or parsing it).
Showing with 64 additions and 10 deletions