Make rotation switchable on a per-particle level

When SWITCHABLE_ROTATION is defined in myconfig.h,
part ... rotation 1
activates rotation for a specific particle.
SWITCHABLE_ROTATION is incompatible with pressure calculation, as there is no method to count the number of degrees of freedom, yet.
SWITCHABLE_ROTATION: Added to feature list in config.c
Dipolar all with all - no replicas: Respect boundary conditions set by setmd
SWITCHABLE_ROTATION implies ROTATION.

Conflicts:

	communication.c
	config.h
Merge branch 'master' into switchable-rotation.

Conflicts:
	doc/ug/features.tex
	doc/ug/part.tex
	myconfig-sample.h
	src/communication.c
	src/config.c
	src/config.h
	src/magnetic_non_p3m_methods.c
	src/pressure.c
	src/pressure.h
in add_constraint_force, exit early if no constraints are active
The code from check_forces() which checks if a force is nan
into rescale_forces...() to avoid an additional iteration over all particles
Bugfix to thermostat: Fixed particles got thermostat forces
Merge branch 'master' into switchable_rotation2
Fixed ROTATION_PER_PARTICLE.
Merge branch 'master' into rotation_per_particle

Conflicts:
	NEWS
	src/magnetic_non_p3m_methods.c
	src/particle_data.c
	src/rotation.c
Merge branch 'master' into rotation_per_particle
Fixed regression in rotation_per_particle
testing
galilei is all finished up, must still work on the reactions
This commit updates the following elements of ESPResSo.
1) It removes the Tcl functions: stop_particles, stopParticles, system_com, system_com_vel, and galileiTransformParticles, which were in the auxiliary.tcl script.
2) It replaces these with MPI functions: kill_particle_motion, kill_particle_forces, system_CMS, system_CMS_velocity, and galilei_transform (respectively). These new functions are incorporated in a new feature called 'GALILEI'.
3) It changes the Hat-potential entry in the user guide to be more clear on what the cut-off radius is and what the radial dependence is.
4) It updates the reaction code with two options:
   (a) Letting each reactant interact only with one catalyst particle during each time step. This enables the creation of catalytic surfaces comprised of catalyst particles (with arbitrary density), yet maintaining a surface-density-independent reaction rate near the surface.
   (b) A print option is given to the reaction command, such that the specific input parameters can be returned to the Tcl level.
5) All the necessary  updates are made in the user guide.
Merge branches 'galilei' and 'galilei_transform' into galilei_transform
Also included the files I missed earlier.
Simple angular velocity observable added, must still add more complex angular auto-correlation function.
new velocity boundary conditions for LBPU

the implementation is completely analogous to the CPU implementation