packages.mk: update several packages

Update the following packages to their recent versions:

    Boost C++ (1.56.0)
    Clang (3.5.0)
    GCC (4.9.1)

The patches for Boost C++ still apply smoothly, although the issues may have
been fixed in the meantime in a different way.
lua: fix FTBFS with Boost C++ 1.56

The move constructor of boost::cref has silently been dropped for
compatibility with std::cref:
https://svn.boost.org/trac/boost/ticket/10368

This breaks code such as "cref(v[i])" found in some Lua converters.
Rewrite the for-loops to avoid such constructions. Use std::cref
throughout.
io/logger: add note on deprecated boost::empty_deleter
lua converters: revert to boost::cref

Using std::cref causes a Lua error "Trying to use unregistered class".
The reason is that luaponte (luabind) is C++98 and binds only
boost::cref, see libs/luaponte/luaponte/detail/convert_to_lua.hpp.

The bug was introduced in commit:4b16bd3, which was not properly tested.
This fixes #335919.
doc: update list of tested compilers
potentials: drop unneeded include of Boost.Assign

boost::assign::list_of was used to set default array parameters (e.g.,
the cutoff). This is now handled by the Lua scripts.
mdsim: add region module to select particles from a simulation domain

This module allows to select particles based on their position in the
simulation domain. Whether a particle is within a region or outside of
it, will be determined by another module, the geometry.

The GPU implementation of the selection is similar to the implementation
of the binning module, but there are only 2 bins: inside or outside the
region. After determining a "mask" (or bin) for each particle, the
particles are sorted by the bin and then the bin border is determined,
to calculate the number of particles in each bin.

The mask can also determined independently in order to enable operations
like intersections, unions, etc. of regions/particle groups.

Note that there is not yet a geometry implementation, this will follow
in a later commit.
mdsim/geometries: add cuboid geometry

Add the most simple geometry for the region module: a cubic (or
rectangular in 2D) domain.
particle_groups: add from_region

Constructs a particle group from a region. The selected particles can
either be in the region or outside of it. Both will be calculated at the
same time from the region module.

Warning: Host variant crashes due to missing resize() of raw_array.
fix two_particles test
utility/raw_array: add reserve(), resize(), capacity()

Add very simple size-changing functions to raw_array.
Note there is no guarantee that the data stored in the array is
preserved after a calling reserve() or resize().
particle_group: add function to copy particle group into particle

This function will copy only position, image, velocity, mass, species.
Others do not make much sense in a new particle instance (e.g. id, force
or auxiliary variables).
from_region: make conversation to particle instance accessible
minor fixes