Only call pushState() upon xhr success. Fixes #319

This matches the experience of normal browsing, and eliminates a bug where a fallback request for a failed pjax request could be sent with an incorrect Referrer header.