Attach pageMod to every document, even existing ones, and start receiving events earlier.

- This should remove the need for the 'ready' hack on tabs.
- This should break iframes, but for the moment they cause performance problems
Re-indent sidebar.js
Assign uid to sidebar to help debugging
Add some protections inside minimap code to not fail when elements do not exist
Stop instanciating useless extra Sidebar objets. Since there is already some window tracking
code in sidebar.js, we don't need to instanciate it multiple times.

Note: this is still wrong, because the init() code gets executed for each sidebar, so
we have multiple pagemods etc. This will need to be fixed separately.
Proper multi-windows support. Refresh the sidebar for the activeTab in each window correctly.
The window changes are enough to justify a minor version increment
Version bump the README as well.
Correct rounding issues, don't use parseInt for rounding (!)
Make variable names in minimap code more explicit
When a window is closed, call .destroy() on the sidebar. In destroy(), remove the sidebar from instances array.
More variable renaming to make minimap code more explicit
Implement minimap auto-scrolling when content is too big to fit in the sidebar
Bump to 0.0.8 now that we have minimap auto-scrolling.
Observe DOM changes from documentElement, not just body, just in case.
Add compatibility for quirks web pages.

for those, we need to use the body and not the documentElement when
measuring anything and playing with scroll values.
Remove old debug comments
When untracking a window, don't try getting sidebar instances if the window is not holding a sidebar element
All those 'var' statements are making me nervous. Use let everywhere, reworking code flow a little where necessary
Add unit tests for base sidebar functionality