removing zeros in profile data caused by Thermo bug

Some Thermo QExactive profile data contain zero intensity data points that are clearly not part of the profile. The example below shows two peaks in profile mode. Data points are roughly 0.006 Th apart. Right after the 4th and 5th data point, the spectrum contains two zero-intensity data points (green +). They are clearly artefacts and not part of the profile.

This pull request removes these zeros in the SplineSpectrum constructor and thereby ensures correct interpolation of the profile data.

![thermobugzeros](https://cloud.githubusercontent.com/assets/6149805/4941281/6ac8f932-65e1-11e4-8725-54ca7fabcf9f.png)

Ok I see. So it crucially depends on proper removal of multiple zeros in the processing step above.  I think this must be clearly documented otherwise somebody might change a bit the upper part and  break the lower one. 
Your code is becoming very depending on other processing steps so I think you should clearly state and test invariants/pre- and postconditions.

I will try to give some hints but we can discuss this on skype if you want:

e.g. the first part might have the postcondition "no sequence of 3 data points with zero intensity exist in the spectrum."

Now consider the number of trailing zeros of a peak before this step. Is there a guarantee or requirement that trailing zero to the left and right of a peak exist? If yes (I think you ensure that somewhere IIRC) it should be clearly stated and tested as a precondition. Only with the precondition "trailing zeros exist to left and right of peak" the postcondition "no sequence of 3 data points with zero intensity" you can state a new postcondition like "profile peaks are enclosed by exactly one zero datapoint to the left and right".

Only if you know this postcondition you can be sure that the second step (removal of internal zeros) does the right thing. On the other hand: if you know for sure that every peak is enclosed by exactly one trailing zero you could remove all other zeros without the need of a magic constant!