First version of the new DepthMap base type

This type should be able to represent distance informations collected with different types of sensors (3D lidars, rotating 2D lidars, ToF cams, etc.)
Therefore it is possible to arrange the measurements rotated or translated in two dimensions. Those intervals can be either regular or irregular.

Mainly I'd like to have your opinion on the part where the angular or planar resolutions are defined.
The type has now two fields
``
std::vector<double> vertical_interval;
std::vector<double> horizontal_interval;
``
which can either be an angle or a position on a plane. How the interval is interpreted is selected by a projection type parameter. It is not so nice to have only a double value which can be handled so differently, but I think it is still the most practical way to represent planar and polar depth maps in the same type. Using c++11 it would also be possible to have an union of a base::Angle and a double.

Also I'm not sure if we necessarily need the rotation speeds in this type.

Not finished:
* The unit test is incomplete, the planar case is not tested yet.
* The visualizations from the MultilevelLaserScan type should be ported.
* A log conversion from the old to the new type should be written.
Oh yes.. 
But I think there was also END_LASER_RANGE_ERRORS to separate from the error values. But anyway, I also think that it can be removed. I also like to remove the rotation speed for now. It's in this form only valid in the polar case and could also be calculated using the timestamps.
And if those members are needed later on, that can be added again.