History API cross-browser implementation enhancement

Singleton class `aria.utils.History` provides a cross-browser implementation of HTML5 native history API. With respect to the previous version, this one is more compliant with the standard behaviour:
* the `onpopstate` class event is not raised after a `pushState` or `replaceState`.
* the `state` property is available on the singleton and it corresponds to `window.history.state`.
* support for page reload and external navigation is supported also in browsers for which hash-based navigation fallback occurs (with the exception of IE7, for which the previous history is not kept after reloading, but only the current state is available).

However, the new version is backward compatible with the previous one. In order to disable backward compatibility, set `aria.utils.History.isBackwardCompatible` to false right after loading the class.