Merge pull request #17 from haarg/subtype_param

Subtype parameterized types
pass moose namespace as part of type hash instead of separately
refactor code