add forward_chain_command_controllers

This PR introduces a new template class **forward_chain_command_controller**, with which it is possible to send commands to a kinematic chain consisting of several joints. Additionally three new controllers are added which use this class:
- effort_controllers/chain_effort_controllers
- velocity_controllers/chain_velocity_controllers
- position_controllers/chain_position_controllers

The controllers subscribe to a topic "command" of type std_msgs/Float64MultiArray and use the float64[] data field as command values interpreting the values as position, velocity and efffort depending on the control domain respectively.
`getHandle()` will [throw an exception](https://github.com/ros-controls/ros_control/blob/indigo-devel/hardware_interface/include/hardware_interface/internal/hardware_resource_manager.h#L96) if the name does not exist. You should either first check for the existence of the names, or catch the exception and handle the error.