extend text-object ranges only in visual state (fix #401)

Some text objects (e.g. outer quote objects) extend the visual
selection. This behaviour depends on the text-objects
`:extend-selection` property. However, if the text-object is not used
in visual state but with an operator, the object should never be
extended.
Let grep-mode-map override the Evil keymap

Just like the compilation-mode-map it is useful to make the
grep-mode-map override the Evil keymap.