py: Put number parsing code together in parsenum.c.
diff --git a/py/objint.c b/py/objint.c
index 82bab9e..0caaab6 100644
--- a/py/objint.c
+++ b/py/objint.c
@@ -5,10 +5,10 @@
 
 #include "nlr.h"
 #include "misc.h"
-#include "strtonum.h"
 #include "mpconfig.h"
 #include "qstr.h"
 #include "obj.h"
+#include "parsenum.h"
 #include "objint.h"
 
 // This dispatcher function is expected to be independent of the implementation
@@ -25,7 +25,7 @@
                 // a string, parse it
                 uint l;
                 const char *s = mp_obj_str_get_data(args[0], &l);
-                return MP_OBJ_NEW_SMALL_INT(mp_strtonum(s, 0));
+                return mp_parse_num_integer(s, l, 0);
             } else {
                 return MP_OBJ_NEW_SMALL_INT(mp_obj_get_int(args[0]));
             }
@@ -36,7 +36,7 @@
             // TODO proper error checking of argument types
             uint l;
             const char *s = mp_obj_str_get_data(args[0], &l);
-            return MP_OBJ_NEW_SMALL_INT(mp_strtonum(s, mp_obj_get_int(args[1])));
+            return mp_parse_num_integer(s, l, mp_obj_get_int(args[1]));
         }
 
         default: