Introduce TypeDecoder

This complements TypeEncoder for modifying how scalang marshalls
primitive types.
Merge pull request #29 from rnewson/type-encoder-pr

Introduce TypeDecoder