Efficiency improvements and customizable occupancy 2D map projection.

+ Efficiency improvements:
|- avoid transforming clouds already in map frame (added additional
parameter to specify sensor frame_id for calculating sensor pose)
|- create occupancy cloud directly as ros message instead of pcl cloud
(avoids conversion)

+ Projection of nav_msgs::OccupancyGrid with customizable height and
initialization as free or unknown.

+ Increased tf listener buffer to 30 sec.
I tend to use shared ptrs because if in the future the nodes are converted to nodelets, the transition is easier (and the overhead is negligible).