Fix fragment inclusion when fragment === 'body'

In the case where 'body' was specified as the fragment the $fragment variable already pointed to the list of child nodes for the body so calling .contents() gave back the second level of descendents instead of the desired first level.
update unit test with new expectation to include body fragment direct children
Don't break the back button when hard loading

- Add a test case for going back from error pages which don't have pjax,
  as described in issue #422

- When hard loading a url, set the back action to the page's url from
  before the request was made

Fixes #422
Fix intermittent "pjax fallback" test suite failures

The `history.forward()` navigation is unnecessary for this test, but
causes it to affect the rest of the test suite.
Move jQuery & QUnit to `vendor/`
Merge branch 'back-from-error'

Closes #437
Merge pull request #458 from defunkt/vendor

Move jQuery & QUnit to `vendor/`
Avoid testing the same regular expression twice

Closes #314
Merge pull request #266 from drock/patch-1

Fix fragment inclusion when fragment === 'body'
Fix `_pjax` parameter when `data` option is explicitly supplied

`data` option for `$.ajax` can be either an Object or Array
Test setting `_pjax` query param if array `data` was supplied
Merge branch 'data-array'

Closes #270
Add `bootstrap/test/server` scripts
We don't need "json" gem on Ruby 1.9.3

It has JSON functionality built-in
Ensure `bundle` is ran in Ruby 1.9.3 environment
Add test for transparently handling form submits

Closes #302
Merge pull request #457 from defunkt/scripts

Add `bootstrap/test/server` scripts for development & testing
Simplify & improve detection of same-page anchors

If you were on URL that has `#foo` and clicked on link that has simply
`#` as href, pjax wouldn't recognize it as same-page anchor and would
allow xhr request to be initiated.
pjax 1.9.3
Avoid using `location.hash` as jQuery selector directly

The URI fragment might have all sorts of data in it and will not always
be a valid CSS query. The previous approach could have led to Sizzle
syntax errors.

Since we're only allowing lookups by ID, use `getElementById` here which
will never error out, even for malformed values.