Added emergency stop support.

I have added emergency stop support to the gazebo_ros_control and DefaultRobotHWSim plugins. gazebo_ros_control now resets the controllers when the robot's simulated hardware indicates that the emergency stop has been deactivated after being activated. DefaultRobotHWSim now subscribes to the Boolean topic specified by the eStopTopic SDF element. Messages received from the topic control the E-stop. When the E-stop is activated, the following occurs:

* If a joint's position is being controlled, DefaultRobotHWSim maintains the position the joint had when the E-stop was activated.

* If a joint's velocity is being controlled, the velocity is set to zero.

* If a joint's effort is being controlled, the effort is set to zero.

> What are your thoughts @jim-rothrock, @jbohren, @davetcoleman?

The new signature for initSim() sounds good to me. The current PR, though, can be implemented without modifying the API if I use strategy 1, described above. All the topic work is performed in gazebo_ros_control_plugin.cpp. All DefaultRobotHWSim would do is check its e_stop_active_ member variable, and set joint values accordingly. RobotHWSim::eStopActive()'s signature would change so that it takes a bool and returns void. The default implementation would be an empty function.