Move type specific functions into the type classes as static methods.