Range.union: improve return type
RSet: remove unused exception
improve use of Result

Don't open it in module scope, especially to avoid overriding
ok_exn. Now opening Result.Monad_infix locally where needed.

Delete output_ok, output_error, and output_result functions. They only
avoided use of extra parentheses, which is perhaps not a good enough
reason to create an extra abstraction.

Rename Result.while_ok to Result.List.mapi, which follows Async's
choice to define Deferred.Or_error.List.

Replace Result.{return, fail} with {Ok, Error}, respectively.
Phred_score: improve API

Use Or_error. Move exception-ful interface to Biocaml_ez. Uppercase
polymorphic variant constructors.
replace |! with |>

The ( |! ) operator is a Core remnant from before ( |> ) became part of
the standard library.
Phred_score: fix minor doc error