Escape #'s

Pound signs - aka hashtags - have special meaning in a url, and
therefore need to be escaped from our test names.
Simplify pound-sign escaping test
Escape question marks

Question marks have special meaning in a URL and need to be escaped.
Escape percent signs

The percent sign escapes other characters in URLs, so if our test name
has any `%`’s in it, we have to escape those first.

Also note that we must escape the percent sign before escaping anything
else. Otherwise, we would mess up escaped characters, since those are
denoted by a…you guessed it… percent sign.
Escape forward slashes

Obviously forward slashes have special meaning in a url, so escape any
from our test name.
Escape dollar signs

$ has special meaning in a URL and must be escaped.
Simplify browser opening test
Add test for long test name with special characters
Use built in Javascript function to encode URLs

`encodeURIComponent` already escapes special characters from a URL, so
we’ll just use that.
Add tests for the remaining url reserved characters
Replace character names with their actual character
Use one test for all reserved URL characters

Found here: http://www.faqs.org/rfcs/rfc1738.html
Use one test for all unsafe URL characters

As defined here: http://www.faqs.org/rfcs/rfc1738.html
Merge branch 'escape-urls'