Reincorporate bookmarklet build

This commit adds back the configuration needed to build the bookmarklet.
I've moved the bookmarklet from contrib/ to src/ -- if it isn't going to
have its own build process it probably shouldn't live in another
location (especially if that makes the build scripts more convoluted).

This is a work in progress. I have tried to preserve the original tests
for the functionality of the bootstrapper, but they are broken at the
moment. It might be easiest to test with a mock "window" object.