Allow user to specify custom Dict implementation for decoder; add type info to decoder