Remove comment on dictionary definition structure

This information is now better represented in the docs,
./doc/dictionary_format.md
Add ability to register types in the library

Regristration so far is global and based on stream ids, that means that
the core definitions are overridden by the message definitions and that
the message definitions are then overridden by the final
definitions. Clearly that isn't ideal and we need some sort of
'namespacing'.

As well as the registration functionality, a real logging framework has
been instroduced. Therefore meaning we can have the verbose logging
available when required but leave it off as default.