User typelist conversion for hg

This is a fairly solid improvement over what previously existed on the master branch. Almost all of the features work on a basic level. More complex tests need to be developed to verify many numerous corner cases.

Known issues are continually being added to the issues lists, and will be tracked accordingly.