farserparser issue

@laughedelic  It seams that fastaparser works incorrectly, indeed it can parse same reads from different chunks. I didn't investigate it deeply but I have defined test case when it fails:

```scala
class S3Splitter(s3: S3, address: ObjectAddress, chunksSize: Long) {

  def objectSize(): Long = {
    s3.s3.getObjectMetadata(address.bucket, address.key).getContentLength
  }

  def chunks(): List[(Long, Long)] = {

    val size = objectSize()

    val starts = 0L until size by chunksSize
    val ends = starts.map { start =>
      math.min(start + chunksSize - 1, size - 1)
    }

    starts.zip(ends).toList
  }
}

class TestCase(s3: ohnosequences.awstools.s3) {
  def test() {
    val file = ObjectAddress("metapasta-test", "microtest.fastq")
    val chunks = new S3Splitter(aws.s3, file, 10000).chunks()
    import ohnosequences.formats._
    import ohnosequences.parsers._
    val reader = S3ChunksReader(aws.s3, file)
    var left = chunks.size
    var size = 0
    for (chunk <- chunks) {
      println(left + " chunks left")
      left -= 1
      val parsed: List[FASTQ[RawHeader]] = reader.parseChunk[RawHeader](chunk._1, chunk._2)._1
      size += parsed.size
    }
    //print 10001 instead 10000 ( = amount of reads in microtest.fastq)
    println(size)
  }
}
```