Retrieve correct target on events

Fixes #1

Thanks to Ksevio on Reddit
Add redirect in case of non-html content
InstantClick.supported
Fix comment’s case
Clarify comment
remove `throw`
Adding a whitelist mode, activated by default

+ Remove checkLinkFunction (the old clunky way of doing whitelist)
+ Detecting script[data-no-instant] in the DOM instead of via regex
+ InstantClick.debug() now shows `useBlacklist` (and `supported`)
Abort request on mouseout
[Minor] var renaming
Bugfix: popstate works on URL with different ?search

Previously on popstate, if two URL had the same pathname (URL without ?search and #hash) the function invoked on popstate would abort. But you don't want to abort when ?search is different, only when #hash is.
Whitelist mode doesn't change scripts' behavior anymore

Changing it is too confusing, bad idea.
More elegant events

Before:
function onPageChange() {
   ga('send', 'pageview')
}
if (InstantClick.supported) {
  addEventListener('page:change', onPageChange)
}
else {
  onPageChange()
}

After:
InstantClick.on('change', function() {
  ga('send', 'pageview')
})
1.1