Expose xpath utils

Previously xpath usage was closely tied to the `getMarkableElements`
function.
Fix #280: Use `[rel]` for prev/next link matching

The standard way of marking up the previous or next page of a series is
to use a `<link>` or `<a>` element with a `rel` attribute.

We don’t bother with `<link>`s since the commands are substitutes for
clicking a visible element. (And at least in my experience, they’re not
commonly used.) Moreover, if there’s a `<link>` with a `rel` attribute,
there’s likely a corresponding `<a>`, too.

We first try to find a nicely marked up link, then we fall back on
pattern matching of the text contents of the links.

The spec on the `rel` attribute:
<http://www.w3.org/TR/html5/links.html#linkTypes>

How Google handles it:
<https://support.google.com/webmasters/answer/1663744?hl=en>

This commit is based on #313 by @zhuochun.
Let the Esc command close tab groups

Since commit 1fd30eca9 makes opening the tab groups view (ctrl-shift-e)
about the same as focusing a text input (passing all key strokes to the
browser), the Esc command must be able to exit from it.
Slightly improve markable element matching

- Only `<a>` elements with a `href` attribute should be matched, since
  HTML5 allows `<a>` elements to omit `href`:

  > If the a element has no href attribute, then the element represents
  > a placeholder for where a link might otherwise have been placed, if
  > it had been relevant, consisting of just the element's contents.

  Reference:
  <http://developers.whatwg.org/text-level-semantics.html#the-a-element>

- Elements with the `tabindex` attribute should be matched, but not
  `tabindex=-1`, which means explicitly saying that the element should
  _not_ be focusable.
Bump minimum Firefox version (see #314)
Improve contenteditable detection
Fix #309: Autofocus prevention is broken

Autofocus was broken by some Firefox update, possibly version 29. This
commit fixes it again. It also fixes a bug where autofocus was prevented
even on blacklisted sites, and cleans the code a bit.
Remove old VimFxFindInput CSS
Cleanup CSS a bit
Raise the z-indexes used to trump youtube

Youtube uses 1999999999 as z-index for its top bar, which is a lot
higher than VimFx used for the help dialog and markers. This caused the
top bar to overlap the help dialog, and, more importantly, the markers,
making it impossible to see the marker for the search box, for example.

This commit raises VimFx’s z-indexes to trump Youtube.
Remove stray `console.log`s
Merge pull request #322 from lydell/fix-autofocus

Fix autofocus
Version bump and changelog update
Build version 0.5.11
Fix: Autofocus prevention got stuck by navigating the history

Either going forward and backward in the history, or using
`history.pushState()` caused the autofocus prevention to get stuck,
making it impossible to focus inputs.
Version bump and changelog update
Build 0.5.12