Navbar: Fixed styling of button elements

Fixes gh-7606
Navbar: Added demo of navbar with button elements
Listview: Updated filter demos to new Filterable widget API

Fixes gh-7279
Closes gh-7488
Demos: Added links to API docs

Fixes gh-7441
Closes gh-7450
Popup: do not call blur if the target is the body

In IE 10 (and possibly older versions of IE) when there is a single tab open
and a popup is displayed and there is another window on the same monitor,
calling target.blur() can cause the browser to go to the background because the
body element is the targetElement.  Ensuring the element is not the body element
before calling blur() fixes this issue.

Fixes gh-7639
Closes gh-7298
Build: use docker queue in travis build to improve speed

Closes gh-7638
Textinput: added tabindex -1 on clearbuttons

Closes gh-7155
Fixes gh-6467
Textinput: Add aria-hidden="true" to clear button and test correct markup

Closes gh-7647
Listview: Fixed a typo in autodividers selector demo

Fixes gh-7650
Closes gh-7651
Toolbar: Demo the use of custom CSS to add left/right buttons to footer

Closes gh-7635
Fixes gh-7634
Navigation: Correctly (un)escape data-url all throughout the code

Also removes code dealing with nested list URL tokens (subPageUrlKey)

The initial bug was regarding the need to use selector-escaping when looking
for pages inside the DOM via their data-url attribute, because the the data-url
may contain "weird" characters like parantheses, single, and double quotes.

During the process of fixing this it became clear that the data-url attribute
can sometimes end up having a URL-encoded value - but not always. This makes
proper string comparison, much less selector-escaping, impossible. So, it
became necessary to require that data-url never be url-encoded.

Conversely, the URL that ends up in the location when using replaceState() must
be URL-encoded, otherwise, upon deep linking, one may end up with an invalid
URL. For example, if the URL contains an actual percent sign, and the URL is
placed in the location via replaceState(), the percent sign must be URL-encoded
in order for deep-linking to work.

Below are the original commit messages that have been squashed:

Pagecontainer: Escape dataUrl when trying to find page based on it
Navigation: Make sure location is encoded when going to a funky page
Pagecontainer: Test that _find() throws not when looking for weird URLs
Init: Correctly assign data-url for initial page
Init: Make sure "data-url" attribute for initial page is decoded
Pagecontainer: Decode URI when assigning to "data-url" during _parse()
Pagecontainer: Use decoded URL to build selector for data-url
Pagecontainer: Call convertUrlToDataUrl() via _createDataUrl()
Path: Always uri-decode when computing dataUrl
Pagecontainer: Remove extra decoding step, now part of _createDataUrl()

This also removes the possibility that a URL gets double-decoded.
Pagecontainer: Test behavior of _find() in the face of weird URLs
Navigation: Use data-url retrieved from Ajax request in its encoded form
Pagecontainer: Pass encoded URL to $.mobile.navigate()
Init: Rename JS file with spaces in it

Closes gh-7474
Fixes gh-1383
Textinput: Only _destroy() clear button when present

Closes gh-7568
Fixes gh-7567
Toolbar: Sorts our proper destroy methods for toolbar and fixedtoolbar

Fixes gh-6987
Fixes gh-6939
Closes gh-7252
Slider: change event is too greedy with mouse drag

Fixes gh-7649
Closes gh-7653
Build: Updated authors list
Contributing: Replaced the reference to PhoneGap with Apache Cordova

made replacement

Fixes gh-7764
Closes gh-7766
Build: Upgrade to commitplease 2.0.0

commitplease now accepts "[tmp]:" and similar to temporary commits,
useful while updating pull requests that are squashed later.
Init: Stop QUnit while asynchronously loading unit test dependencies

Fixes gh-7790
Demos: Add backbone demo listview classes a priori

Closes gh-7782
Fixes gh-7719
Build: Correctly transform structure CSS references in the demos

Closes gh-7778
Fixes gh-7771