Adds encodeURI and decodeURI

Notes: This PR doesn't account for surrogate pairs. 
Escape does not replace the same set of characters.

While you're at it, why not add encodeURIComponent, which is just another set of characters?