Abort pending XHR in popstate handler

This fixes the bug where, if the user clicks back while a PJAX request is loading, the originally requested page is displayed anyway once the XHR response arrives.
Is exactly 1000ms enough time to wait for a page that's configured to timeout after 1s? To account for tiny network & other overhead, I would suggest waiting 1050ms or something like that.

Also, won't pjax's own default timeout behavior kick in after 650ms? We have to override this default timeout by passing a `timeout: 0` option to `pjax()` call.