fix three missed conversions to closures.  switch to extending math prototypes rather than replacing them.  This is to ensure that types created in closures within a type's prototype definition get their prototype updated with the full definition.