Fixed generic/non-generic interfaces
Moved abstract spectrum to own file, renamed mz spectrum MZSpectrum