make 'beginning-of-line and 'end-of-line regular errors

Make those error symbols analogously to 'beginning-of-buffer and
'end-of-buffer.

--HG--
extra : histedit_source : 67b1b570367dcdfe176a4f4488576aed6d8d0251
do not catch error in operator state

If the motion for an operator raises an error, the operator is
aborted. The old behaviour was to set some kind of default
motion. However, this usually leads to weird results, because that
default motion is often quite different from the intended motion.

The only exception are 'end-of-buffer and 'beginning-of-buffer, which
must be let through so that `evil-forward-char` can be used as a
(possibly failing) motion for some operators like `evil-substitute`.

--HG--
extra : histedit_source : 77001f0e8a4490fb8b0d8a10f682bed1003d936d%2C73efee4db00b3437f1982d64fd43ae20a5219a10
guard `evil-next-match` against search wrap (fix #327)

`evil-next-match` has to do a backward search first in order to
determine whether point is on a match, currently. However, this search
must not wrap at the buffer boundaries.

--HG--
extra : histedit_source : eadf059b589cc10775c6c69de15a3119e61e9db3