Readable++: prefer the MAIN element for content

It is HTML5 fo' rillz now, y0. Let's see how this turns out.
Dump HTML: initial commit (dump generated DOM)
Google Maps: initial commit (map/drive/ride/walk)
generate-bookmarks-html: URL-encode with PHP

My old computer running OS X 10.6 does not have URI::Escape by default.
generate-bookmarks-html: expand bookmark generator

* Spread the commands across multiple lines for clarity
* Do not remove /*comments without spaces*/ after the opening "/*" or after the closing "*/"
  (This is necessary for the upcoming "%s" handling change.)
*: rework "%s" parsing now that E4X is dead

I parsed bookmarklet parameters ("%s") using E4X so I could use "unsafe"
characters in my parameter strings. For example, suppose we have a bookmarklet
called "len" that returns the length of a given string. How would we handle the
following input?

    len I say: "How y'all doing?"

If the code was: alert("%s".length), it would break on the quotation marks
around "How y'all doing?"

If the code was: alert('%s'.length), it would break on the apostrophe of
"y'all".

E4X neatly allowed me to sidestep that using CDATA-in-XML-in-JavaScript:

    <><![CDATA[%s]]></>

Alas, no more: https://bugzilla.mozilla.org/show_bug.cgi?id=788293
"Remove E4X from Spidermonkey"

                                     *
                                    * *

There is another way, though: JavaScript functions have a toString(). If we
embed our parameters as a comment inside an anonymous function, we can get it
out by parsing its string representation:

    (function () { /*%s*/; }).toString().ruffleThisStringABit()

Dirty, and not as robust as the E4X way when a string contains "*/", but it
mostly works.