Tweak decode_scanString:

- \uXXXX support (as UTF-8)
- unnecessary escapes are ignored instead of throwing an error
- removed shitty loop
Also tweaked some 5.0 compat stuff

(I didn't test it, but it should work)