panner.options.load(url, cb) -> panner.options.httpGet(url, data, settings, cb)
decor.options.load(url, cb) -> decor.options.httpGet(url, data, settings, cb)

panner.options.preproces(doc) -> panner.options.normalize(doc, settings)

add decor.options.normalize(doc, settings)
HTMLDecor's `URI` class is really a `URL` class.
- rename all URI -> URL
- and only pass url strings around
Firefox changed the names of errors thrown when attempting to access cross-domain stylesheets.
Add config.js as an example and to remove v1 functionality from boot.js
- Revert to panner.options.load
- Add HTMLLoader as a utility class
- Remove parseJSON and some other cruft
- Expose Meeko.bootOptions
- remove unused uc() & lc()
- forEach() === some(), if return null or undefined
ignore_cookie_options
Shrink options.js a tiny bit
- Pass responseText as String object not raw string.
- docHead was in global namespace
- refactor HTMLLoader:doRequest
- trailing comma in object was breaking IE
Shouldn't call cb.onComplete() directly
Implementation of async.until(test, fn)  was actually `do fn until test`.
Changed it so the behavior matches until.
ignoring cookie options shouldn't be the first thing someone looks for
Improve URL
First before-pageIn notification wasn't being called with the incoming doc (=document)
For the landing-page, if `decor.options.lookup()` doesn't provide a decorURL,
then wait for for `document.body` before calling `decor.options.detect()`
Resolve protocol-less absolute-URLs.
Update, expand docs
Missed decor for index.html