currently refactoring codec
todo : replace decode_with_length by decode with optional length parameter
group prefix tlv and header codec in a generic hlv codec
add auto test for testing behavior of decode and encode on each codec class