The top-level function, escape, encodes the string that is
contained in the string argument to make it portable. A string
is considered portable if it can be transmitted across any network to
any computer that supports ASCII characters.
To make a string portable, characters other than the following 69
ASCII characters must be encoded:
All other characters are converted either to their two digit (%xx) or
four digit (%uxxxx) hexadecimal equivalent (refered to as the character's
"hexadecimal escape sequence"). For example, a blank space will be represented
by %20 and a semicolon by %3B. (Note that the hexadecimal numbers are:
Use the unescape function to decode
an encoded sequence that was created using escape.