Initial attempt at blockwise repetition command (aka `.`, aka dot)
Blockwise refactorings:

- Got rid of TextBlockContentBuilderRegister.
- Added blockwise yank operation and command.
- Fixed issue with yanking past the end of line.
- Fixed typo.
Fix #249: Delete selection when pasting register

When in Insert mode, you can still select text either manually or by
starting an Eclipse action selecting text (like tabbing through the
arguments of a function during command completion). This commit will
delete that selection and replace it with the contents of the selected
register.
Undo changes to formatting settings.
Remeber selection in BlockwiseYankCommand for `gv`.
Better edge cases handling in blockwise operations.
Merge pull request #248 from igrekster/blockwise-repeat

Initial attempt at blockwise repetition command (aka `.`, aka dot)
Fix #250.  Update last jump mark when jumping to a mark.
Update unstable update site.
Refactored blockwise yanks and added yanking to blockwise ChangeOperation.
Fix javadoc: s/left/right/
Don't abreviate edit command
Start on #251: implement vS and vgS surround keys

* Surround (and optionally indent) using 'S' in visual mode.
Pressing 'S' in visual mode will allow you to press one of the known
delimiters of the regular surround.vim set. These delimiters will then
be used to wrap the current selection.

Linewise mode will put the delimiters on a new line before and after
the selection, then indent the selected text.

Blockmode basically surrounds every line in the block with the
delimitter.

* Surround but don't indent using 'gS' in visual mode.
Pressing 'gS' in visual mode does all of the above except that it won't
indent the selected text.
Work on #251: split code into helper functions.
Work on #251: refactor out ChangeDelimiterCommand

Dynamic delimiters (like XML tags) require input, but DelimiterParser
would always call ChangeDelimiterCommand. For the "surround selection"
feature, we need to make sure that we can pass in another handler.

This commit refactors the dynamic delimiter code to be decoupled by
using the Command and DelimiterChangedListener interfaces.
Work on #251: add doIt method to InsertLineCommand
Work on #251: implement line wise surround

Linewise surround mode should be completed. History locking is
necessary because the line additions, indentation and delimiter
changes would result in multiple changes.

Prepared code for dynamic delimiter support, still needs to be handled
in the *State classes.
Work on #251: add surround block selection

Code based on igrekster's suggestions but untested because Eclipse
has Ctrl+Q bound to quit for some reason.
Fix #251: complete surround with dynamic delimiter

Code now handles `vSt` without exceptions.

It does seem like the undo manager for XML editors acts flaky, it
won't store its undo items as one big change, whereas the compound
change works fine in a JDT editor. It looks like this is caused by
the "indent" Eclipse action, somehow it must bypass our undo manager
and start another compound change.
Alter #251: Fix build warning on unused imports.