Fastq: refactor Error sub-module
Fastq: reorder definitions, no significant changes

Organize all definitions into clear IO, Printing, Parsing, and
Transforms sections.

Move definition of item_to_string_pure out of Transform sub-module, and
thus rename to item_to_string.

Use `with sexp` in interface too. Although this doesn’t nicely keep
sexp functions at bottom of generated doc, it is easier to maintain.
The doc issue can hopefully be resolved with the new doc tools being
developed for OCaml.
Fastq: rename errors
OMakeroot: define and use COMPILE_BENCHMARKS variable

Were using COMPILE_TESTS for benchmarks, but no reason there shouldn’t
be a distinct variable for benchmarks.
avoid Biocaml_ prefix as much as possible

* Make Line not depend on Internal_pervasives. Pos already didn’t.
* Include Pos and Line in Internal_pervasives.
* `open Biocaml_internal_pervasives` uniformly in every ml and mli,
where possible.
* Replace Biocaml_pos and Biocaml_line with Pos and Line everywhere.

Biocaml_transform is left as-is since many modules have a Transform
sub-module. It is more clear to write out Biocaml_transform to know
which module exactly is being used.
lib/: remove Core. and Core.Std prefix everywhere
Fastq: provide exception-less parsing functions