decoder sketch
first decode function implemented
decode implementation corrected to serve under- and overflow cases well
message api taken into common template class using CRTP
encode and decode methods made public so as to enable reuse
internal decode function is no longer a public api of messages
C++ codec approach changed:
- codec struct is means to access elements
- message CRTP to provide encoding frontend
- message_impl header provides signatures of encoding algorithms
- codec cpps provide implementations of encoding algorithms