changed reader policy

the default behavior of the reader classes is now to raise exceptions
whenever not dumped data is requested. This gives more control in the
program to intentionally handle that as an exception or allow to show
comprehensive error messages.
unify data handling of paricle properties

coherent implementation of atomic particle properties in
SingleSpeciesAnalyzer.
coherent mapping from ParticleAnalyzer functions to contained
SingleSpeciesAnalyzers.
speed up calaculation of particle properties

calculations of particle properties may now be done already inside the
SingleSpeciesAnalyzer class. Calculations of particle properties which
require scalar values on a per species basis (usually mass and charge)
will speed up, because these constant values will not be repeated
using np.repeat before the calculation.
Timed on Laptop with 10e6 particles (timit package, 20 repetitions):
calculating gamma        0.43 --> 0.245 sec (57%)
calculating Ekin_MeV_qm  0.90 --> 0.36  sec (40%)
Merge pull request #14 from skuschel/scalarspeciesproperties

handle scalar species properties more efficiently and change reader policy.
Trying to access particle properties that arend dumped will now yield a KeyError.