Resolve builtins through type functions
Allow passing in the Call node to type functions
Fix some builtin type functions
Add math modules type functions
Fix round() type function
Remove builtin resolver
Move str -> int conversion to late specialization