Refactor text highlighting from EclipseSearchAndReplaceService into a separate service.
Port exchange.vim plugin.

Introduce new key bindings:
- `cx<text-object>` normal mode key binding to highlight/exchange a text object;
- `cxx` normal mode key binding to highlight/exchange the current line;
- `cxc` normal mode key binding to clear previously highlighted text object;
- `X` visual mode binding to highlight/exchange visual selection;

Add new annotation type "Vrapper Exchange Region" used for highlighting
text objects for exchange.

NOTE: Block-wise visual selection is not implemented.
Update documentation for exchange.vim port.
Merge pull request #387 from igrekster/exchange.vim

Port exchange.vim plugin.