Rename snapshots to let tests pass on Windows

Windows doesn't like it when a file ends with a special character like
a space, and some tests happened to use this.

Renamed files and let code strip off the extension.
Make snapshot assert message easier to read.
Merge pull request #288 from albertdev/smallfixes

Fix off-by-one error for reversed UI-selection
Make register snapshot test-cases work on Windows.

The register tests use an append register which collates using "\r\n" on
Windows. The input and state check files would always be converted to
"\n" and thus fail when the test buffer contains a "\r\n" somewhere.
Use assertEquals for better JUnit integration

Eclipse has a nice "String compare view" for each failed result, making
it far easier to detect newline problems.

The only downside is that te "expected, got" messages are duplicated,
first Vrapper's with its cursor marker, then JUnit with it's string
compare message.
Use Mockito magic instead of dummy UIService impl

SnapshotTests implemented UserInterfaceService when all it wanted to do
was to print any error messages. Any changes to the interface would thus
break the tests.

Use Mockito's doAnswer and Answer API instead.
Use Mockito magic to print error messages

Use Mockito's doAnswer and Answer API to handle the setErrorInfo method
of the UserInterfaceService. This way, we don't need a (fragile) stub
just to run our tests.
Javadoc for snapshot tests.
Cleanup unnecessary nested if's.
Work on #289.  It doesn't actually do anything yet though.
Fix #290.  Add support for i_ctrl-d to remove a shiftwidth.
More work on #289.  Fix filename path for :split <filename>.  The
feature still doesn't do anything though.
Update unstable update site.
Handle non-shiftwidth-divisible indents in i_ctr-t and i_ctrl-d.
Call commandDone() when exiting modes.  This is to ensure we return to
InsertMode after hitting `i<c-o>:(some command)`.  That is, <c-o> in
InsertMode jumps to NormalMode for a single command.  But if the user
enters ':' to move to command-line mode we still want to return to
InsertMode after that command-line command has completed.
Update unstable update site again (twice in one day!).
Replace newlines during normal mode's paste.

When pasting using command / normal mode, the newlines were inserted as
is, possibly leading to a file containing mixed end-of-line characters.

Replace these just before pasting the contents of a text register.
Replace newlines during visual mode replace paste.

When pasting / replacing using visual mode, the replacement text might
contain newline characters which don't match the current editor's
end-of-line characters.

Replace the newlines in the register with the editor's type before
pasting.

Also added a snapshot test to test this replacement in multiple modes.
Reformat handleKey, mark special keys as handled.

Function contained mix of spaces and tabs.

Certain keys like <C-R> or <ESC> would also be sent to the editor
because handleKey returned false. This in turn caused trouble for the
snapshot tests.
Replace newlines during Insert register command.

When pasting / replacing using insert's "Insert register" mode, the
replacement text might contain newline characters which don't match the
current editor's end-of-line characters.

Replace the newlines in the register with the editor's type before
pasting.