Fix (bounds-of-thing-at-point 'sexp) usage

(bounds-of-thing-at-point 'sexp) first moves to end of the "thing
('sexp)" using 'forward-sexp. It's possible to signal errors at the
underlying 'parse-sexps calls. For example:

[code,elisp]
----
(defun foo ()
  (ignore 'bar)
  (ignore 'foo)|)
----

In the above example buffer (the cursor position denoted by '|'),
evaluating 'eval-last-sexp make 'forward-sexp to signal a scan-error
and 'bounds-of-thing-at-point to return nil eventially. So the
portion of buffer "(ignore 'foo)" does not get highlighted.

Signed-off-by: Takeshi Banse <takebi@laafc.net>
Merge branch 'tb/bounds-backward' into thb

* tb/bounds-backward:
  Fix (bounds-of-thing-at-point 'sexp) usage