Allow the codec user to pass a proplist of type/module mappings for easier translation.

For our current types this might look like:
    [{set, riak_dt_vvorset},
     {counter, riak_dt_pncounter},
     {flag, riak_dt_od_flag},
     {register, riak_dt_lwwreg},
     {map, riak_dt_multi}]

When passed to encode_fetch_response/4, decode_operation/2 and
encode_update_response/4 as the last argument, the types will
automatically be mapped appropriately.