To simplify customisation, allow `AddTypeWithCallBack(type, typeHandler)` the TypeHandler Interface should allow handling field names, field types, ... This wouldn't require to set structTags on the type fields and would allow a much simpler usage of the library.