Fix parsing of longs near MIN/MAX_INT, parsing of BigIntegers.

This fixes a few bugs in the parsing of large numbers:

Parsing of 10-digit `long` values fails with the following stack trace using `new ObjectMapper(new YAMLFactory()).readTree("2147483648");`:
```
Exception in thread "main" java.lang.NumberFormatException: For input string: "2147483648"
	at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
	at java.lang.Integer.parseInt(Integer.java:465)
	at java.lang.Integer.parseInt(Integer.java:499)
	at com.fasterxml.jackson.dataformat.yaml.YAMLParser._parseNumericValue(YAMLParser.java:644)
```

Parsing of `BigInteger` values fails with the following stack trace using `new ObjectMapper(new YAMLFactory()).readTree("19223372036854775807");`:
```
Exception in thread "main" com.fasterxml.jackson.core.JsonParseException: Current token (VALUE_NUMBER_INT) not numeric, can not use numeric value accessors
 at [Source: java.io.StringReader@15e232b5; line: 1, column: 21]
	at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:1378)
	at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:599)
	at com.fasterxml.jackson.dataformat.yaml.YAMLParser._parseNumericValue(YAMLParser.java:697)
	at com.fasterxml.jackson.core.base.ParserBase.getNumberType(ParserBase.java:599)
```