This patch adds plugin support for controllers. If a plugin file is specified in the world file as well as the name of the controller, the plugin (shared library) will be loaded and the controller type registered before the controller is created.
- Added plugin loading functionality to ControllerFactory
- Modified Model and Sensor to make use of plugin loader
- Added GZ_REGISTER_DYNAMIC_CONTROLLER macro for easy plugin controller registration
- Added dependency on libtool (if not available, plugins are disabled)
- Installed more headers as necessary for my plugin controller
- Added -export-dynamic link flag so that the plugins function calls are resolved