Finished backporting PEP 3127, Integer Literal Support and Syntax.

Added 0b and 0o literals to tokenizer.
Modified PyOS_strtoul to support 0b and 0o inputs.
Modified PyLong_FromString to support guessing 0b and 0o inputs.
Renamed test_hexoct.py to test_int_literal.py and added binary tests.
Added upper and lower case 0b, 0O, and 0X tests to test_int_literal.py
diff --git a/Parser/tokenizer.c b/Parser/tokenizer.c
index 1314f5f..6df3005 100644
--- a/Parser/tokenizer.c
+++ b/Parser/tokenizer.c
@@ -1335,7 +1335,7 @@
 	/* Number */
 	if (isdigit(c)) {
 		if (c == '0') {
-			/* Hex or octal -- maybe. */
+			/* Hex, octal or binary -- maybe. */
 			c = tok_nextc(tok);
 			if (c == '.')
 				goto fraction;
@@ -1356,6 +1356,30 @@
 					c = tok_nextc(tok);
 				} while (isxdigit(c));
 			}
+                        else if (c == 'o' || c == 'O') {
+				/* Octal */
+				c = tok_nextc(tok);
+				if (c < '0' || c > '8') {
+					tok->done = E_TOKEN;
+					tok_backup(tok, c);
+					return ERRORTOKEN;
+				}
+				do {
+					c = tok_nextc(tok);
+				} while ('0' <= c && c < '8');
+			}
+			else if (c == 'b' || c == 'B') {
+				/* Binary */
+				c = tok_nextc(tok);
+				if (c != '0' && c != '1') {
+					tok->done = E_TOKEN;
+					tok_backup(tok, c);
+					return ERRORTOKEN;
+				}
+				do {
+					c = tok_nextc(tok);
+				} while (c == '0' || c == '1');
+			}
 			else {
 				int found_decimal = 0;
 				/* Octal; c is first char of it */