feat($swipe) Add config param to allow choosing X/Y thresholds.

Closes #4550
Closes #5812

- Create config parameter to pass in swipe/scroll (X/Y) thresholds.
- Allow the new thresholds to be applied to how the function determines when
to scroll and when to swipe.
- Fix bug where swiping back and forth within the thresholds would cause a bad
cancel event.
- Fix bug where if you went back inside the thresholds, you could potentially
cancel a swipe in progress.
- Add tests for all these changes.
- Clean up the docs and add definition for the parameters used in
`$swipe.bind`.
I can try (tomorrow - it's kind of late here).
In the meantime, I think that the condition we are looking for is:

    if (!swipeActive && ((absTotalY > absTotalX && absTotalY >= config.scrollThreshold) || abdTotalX < config.swipeThreshold)) {