Don't capture events from $.fn.simulate
Refactor demo to use location.search so the page reloads
Don't capture reanimator keys from localStorage
Clear localStorage before capturing and display log size on replay
Add HashChangeEvent and PopStateEvent; safely create events

`window.HashChangeEvent` is a thing in Phantom 1.8, but throws a DOM exception
when created. So, for some event of type `FooEvent`, create an `Event` instance
if `window.FooEvent` is not defined or if creating a `FooEvent` throws.
Capture events on the window object

Also fix global leak in dom-content-loaded
Only capture demo if in location.hash

Demo will only capture if the url hash includes `?capture`
Teach jQuery tests to ignore popstate events