rewrite of shootout-fasta.rs

improvements:
 - no managed box
 - no virtual calls
 - no useless copy
 - optimizations (bisect is slower, limit tests, BufferedWriter...)
 - pass shootout test
 - should be as fast as the best official test

Thanks to @cmr and @eddyb for their help!