Added a global option to print all available modules
Took the debug_tools implementation into a separated .cpp file as it was
giving link time errors
Added an iequals method to the modules parser which is case insensitive
and treats '-' as equal to '_'.
Make use of the new iequals method in IDs::channel
Add a matches method and replace operator== implementation as described in issue #82
Make sure IDs::generator::matches is inlined to avoid link time errors and
improve speed
Code indenting tidied up
Put in default config name and have str() method always print both the generator
and the config.

Implements all changes requested on issue #80
Make use of isWildCard functions in the matches method
Redefine the field delimiter in the string version of Ids (issue #89) to be `#`,
tidy up indenting and use isWildCard methods in the matches method.
Make use of the new field delimiter in str() as stated in issue #89
Overload iequals to compare chars as well as strings
Add isFast and isSlow methods to IdSource which asks the contained channel if
its fast or slow
Add isFast and isSlow methods to IdChannel and make sure setting the channel by
a string is also case independent
Add extra unit tests for IdChannel to check the handling of assignment by string
Remove the Fast and Slow channel IDs from definitions.h
Make sure all current commited code uses the new isFast isSlow methods instead
of the old `==IDs::Fast` or `==IDs::Slow` approach.
Merge branch 'feature/BK_update_id_classes' of github.com:alcap-org/AlcapDAQ into feature/BK_update_id_classes