Added dynamic queues and support includes in codec configuration files.
This is a substantial set of changes to enable dynamic queues, which can be provided by external nodes that implement the new GetNextQueuedMessage service.
It also improves the codec configuration system by optionally using pyyaml with pyyaml-include to parse configuration files rather than relying on the roslaunch parser. This fixes some issues associated with the roslaunch parser (handling "/" characters, limits on the size of integer literals, etc.) and enables the use of YAML includes, so subsets of codec config files can be re-used.
Additionally, several fixes to default codec config values were applied, so defaults work correctly rather than crashing when a parameter is not set. A script, "check_codec_config.py", is added so users can manually check codec config files.
This version has been tested successfully in sim and at sea. The dynamic queue feature has been tested with ros_acomms_net. There are further improvements to be made, but this is a stable point to merge.