[Pokemon] Pretty much completed, pending small bits of pretty-fying.
Entirely functional. Does not catch exceptions to type.