Fix ProcessTypes to actually, like, work
Simplify to iterator model, and allow more efficient functions
(still more reflection than I want in here, but that's the xml game :/)