more progress on trying to come up with an extensible framework for type parsing.