Added String.isHexDigit()
Added percent decoding, and URL.pathComponents