fix compiler warnings due to commit:dd75b7c

http://my.cdash.org/viewBuildError.php?type=0&buildid=539121

 Große Ganzzahl implizit auf vorzeichenlosen Typen abgeschnitten

 Warnung: Variable »nspecies« wird nicht verwendet
packages.mk: disable parallel build for HDF5, add ninja

By default, HDF5 is now configured without the --enable-parallel flag,
as it requires MPI to be installed which is not required by HALMD. It
can be enabled by "ENABLE_PARALLEL_HDF5=1", though.

Further, add ninja - an alternative to GNU make to the packages. In
order to generate ninja build files with cmake, use
  cmake -GNinja <source-dir>
doc/pdf: fix build for ninja

Split the LaTeX and PDF generation into separate commands and explicitly
call "make" instead of ${CMAKE_MAKE_PROGRAM} because sphinx will always
generate a Makefile and the make program can be different.
observables/sampler: reintroduce on_prepare() signal

After being removed in commit 9360386, it is needed for the new forces
implementation again.
forces: introduce a new model that supports multiple forces

This patch reverts commit bb52a29 partly and creates a new signal
on_force() in the particle module. This signal is used as a
trigger to calculate force updates.

To prevent unnecessary force computations, the force modules
will register themselves to particle:on_prepend_force().
In this step forces will test if their cache is up-to-date
and if not, they signal the particle module if a force
update is required.

This logic adds a (small) overhead when requesting auxiliary
variables or the force itself as every connected force module
has to test whether to update the variables or not.

In order to prevent calculating the force twice - first the force only,
second time with auxiliary variables while sampler:on_sample() -
reintroduce the function particle:aux_enable() to enable
the computation of the auxiliary variables in the next force
computation. For now, this is used in the thermodynamics module
only. More will follow in subsequent commits.