Added CustomType functions to template dependencies

Now developers building Levo templates can use the CustomType methods to map
ModelProperty types to other custom types.

registerCustomType takes the name of a mapping and creates a mapping that name.

setCustomType takes the name of a mapping, a key, and a value. It adds that
key/value pair to the mapping.

isCustomType takes the name of a mapping and a key. It returns true if the key
exists for that mapping.

toCustomType takes the name of a mapping and a key. It returns the value
previously stored under that key for that mapping.