add thing-at-point based move function helpers
add `evil-signal-at-bob` and `evil-signal-at-eob`
implement word and WORD motions with thing-at-point helpers
implement section motions with thing-at-point helpers

* add `evil-defun` thing
* reimplement section motions using `evil-defun` thing
add `evil-backward-beginning` and `evil-backward-end`

These are convenience functions, which call the corresponding forward
functions with negative count.
enlarge restriction in `evil-forward-nearest`

Using a slightly larger restriction than the current best bound allows
to use `evil-forward-nearest` to be used with motions that temporarily
set point to a position outside the restricted area.
implement sentence motions with thing-at-point helpers

A sentence is determined by a `evil-sentence` thing.
implement paragraph motions with thing-at-point helpers
add `evil-forward-not-thing`

This function can be used as forward function for those areas of a
buffer that are *not* contained in a THING.
add `evil-select-inner-object` for normal inner text object selection

This functions fulfils the same purpose as `evil-inner-object-range`
but is based on thing-at-point.

Inner word, WORD, sentence and paragraph text objects are implemented
in terms of this function.

This addresses #364.
add thing-at-point symbol text object

* add `forward-evil-symbol`
* implement inner-symbol text object with `evil-select-inner-object`
add `evil-bounds-of-not-thing-at-point`
add `evil-select-an-object` for normal an outer text object selection

This functions fulfils the same purpose as `evil-an-object-range`
but is based on thing-at-point.

Outer word, WORD, sentence and paragraph text objects are implemented
in terms of this function.

This fixes #364.
remove `evil-inner-object-range` and `evil-an-object-range`
fix `evil-forward-not-thing` at buffer boundaries
add `evil-forward-delim` and `evil-select-delim`
add `evil-forward-paren`
add bounds detection functions for comments and strings

Theses functions are based on Emacs's syntax parser.
make `evil-forward-delim` work with the same open/close regexp

In this case we must make sure that closing (opening) regexp has
precedence over the closing (opening) regexp when parsing in forward
(backward) direction, because both match the same string.
add quote based forward functions

There two possible forward functions `forward-evil-quote` and
`forward-evil-quote-simple`. The former works by syntax table, the
latter by direct character parsing. Both use the global variable
`evil-forward-quote-char` to specify the quotation character.