Faster unescape.

Build and returns a whole string instead of being a generator.
Removed unused import
Test for lexeme split on buffer boundary.
Test for whitespace split on buffer boundary.
Test for ASCII escapes.
Test for 'true' value.
More tests for invalid JSON. Also fixed a real bug with the wrong exception type on converting non-numbers to Decimal.
Test for availablility of common API functions in backends.
Drop IncompleteJSONError.

Now all errors are just JSONError, no need to single out one
special case.