Multi-GPU draft

- needs host::foreach fix (pull comming)
- resets spheric mapper changes (separate pull)
- adds some hints/warnings/todos to FieldEnergy.tpp
- adds 4GPU example
Remove Gather and stay with local result

- Correct SphericMapper: Wrong Rebase result (k3diff)
Add Multi-Phasespace Capability

One can create multiple phase space plots in the same run now.
Add --ps_e Analyser in cfgs

- add PS analyser examples
- remove old files
- fix typo in createParameterSet, choose a word that sounds less horrible
Momentum_Range: transform to desired units
Use new Cell2Particle interface

- PhaseSpace: add charge with CounterShape for now
Documentation and Defines

- public defines for convinience
- more doc
- prepared outsourced output
- SphericMapper: still a wrong line from rebase - corrected
Output draft

- multiple txt files: done (missing units)
- serial splash: draft
- parallel splash: missing
Update Attributes with correct values

- fix operator template for splash implementation
Fix all Splash compile errors
Add PS in 16 GPU cfg file
Create Reduce MPI_Comm once

- move creation of mpi::Reduce to moduleLoad()
- create a new MPI_Comm with ranks of the root processes of the plane reduces
Add Parallel Splash Output Capabilities
Use TypeTrait for Splash Types

- fix mpi-rank vs splash/dataset rank mismatch
- use T_ in template interface variables
Use float_PS precision for PhaseSpace

- double precision: reduce to float_32 (default)
  or use less p_bins
- both parameters are options now
Use collective write instead of indendent append
Serial Splash Dump: separate files for x,y,z

It is not allowed to differ the mpi topology within a serial splash write any
more. Therefore, we need three files: x-px/y/z, y-px/y/z and z-px/y/z now.
Update and Split Code

- update to libSplash 1.0 calls
- move functors into separate file
- remove cuSTL assign work-around for device buffers
  (that was fixed with #103)
- update with new frame/particle syntax
Add Documentation for Functors
Remove some verbosity