move mrpc type name assignment from Interface.process_method to _MethodDict.sanitize
start tracking subclasses.

this is needed to make polymorphism on return types work.