[FIX] allow to also use standard mzML instead of indexedmzML for the Writer

The mzML root node needs to be added to the TreeBuilder otherwise the
child elements are added without a root!.
[FIX] for reading chromatograms -> there is no precursorList
add entry to store what datatype is contained in the datastructure
[FIX] Performance improvement : ca 20%
[FEATURE] add indexed reading also for non-indexed files

- pre-read the files and store the binary indices of all occurences of
  chromatogram / spectra objects
[TEST] add tests
added Python3 compatibility