Don't alter focus with send_keys if we're already in the target element.

If the click event is fired on the target element, then the caret
position that was previously set by, e.g.,

  send_keys(:Left)

is lost. This addresses that by first checking if the target element
already contains the current selection, meaning we have focus within the
target element and don't need to first give it focus.

Fixes #493.