Update unstable update site.
Add ConfigurationListener, GlobalConfiguration

The LocalConfiguration already has a facility for listeners, add the
same for the Configuration held by the platform by introducing a
GlobalConfiguration interface.

Rename LocalConfigurationListener to just ConfigurationListener.
Refactor 'clipboard' setting to a global setting

The code was now implemented as a local listener whereas the setting
is actually global. Handling it inside SWTRegisterManager makes more
sense.

Also make sure to refer to the Options.CLIPBOARD instance, making
it easier to retrieve this code by using Eclipse's "Search Workspace
References" function.
Unnamed or named registers shouldn't use clipboard

Vim keeps its unnamed register around even when 'clipboard' is set to
'unnamed', it's just that it is no longer the default.

It is also kept around for when using named registers, as yanking to e.g.
"a will actually update "" in Vim while p will then paste the system
clipboard. Using either ""p or "ap the yanked content will be returned.

This commit makes Vrapper behave in the same way.
Fix code indentation, was a mix of spaces and tabs
Delete duplicate of SelectionBasedTextOperationCmd

Seems this class was not used anywhere, leading to confusion.
Clean up visual tests

Replace checkCommand with checkLeavingCommand, simply check the final
editor mode instead of using Mockito, don't switch to visual when
a test already put us in one of the visual modes.
Add test for selection side switching
Fix caret position for TempVisual to Insert switch

Most operations work fine when invoked from Temp visual mode, but
pasting while in this mode would put the cursor one character back.

This commit overrides this behaviour by making a new PasteOperation
instance triggering the right action, then overriding the binding in
TempVisualMode. See included test code for results.

Fixes #400.
Add temporary linewise visual mode, integrate all.

Starting temporary Normal mode now has the option to switch to visual
mode or visual linewise mode.

One can also switch back and forth between the three temporary visual
modes using the regular v/V keys.
Update unstable update site.
#416.  Fix cursor position when running InsertMode with a count.  Undo
still requires multiple 'u' calls to undo insert with count though.
Running a command when entering InsertMode wasn't running with counts
due to a scoping issue.  I'm not really sure what the intended behavior
here is but the class-level 'command' variable was useless due to this
scoping issue.
Revert my changes for #416; they break unit tests.  It seems I don't
understand this as well as I thought I did.
Implement "go to percent of file" motion.

See "N%" in Vimdoc.

Fixes feature request in #420.
Revert "Implement "go to percent of file" motion."

This reverts commit ed69ae8742a45027ec0c5626db1e75687c7c6591.

The border policy will cause the entire line to be erased when trying to
do a d% motion on a pair of parentheses.

On the other hand, switching to INCLUSIVE border policy will cause
runtime errors when running d100% (delete to end of file) due to a wrong
addModelOffset(1) in MotionTextObject.applyBorderPolicy.
Fix count before motion, especially after operator

Add test for a command with 3 count values, one before the register, one
after a register and one before a motion.

ConstructorWrappers.operatorPendingState would wrap all operator
commands in another CountingState. The latter would grab the count value
and pass this to a command and hence override the previous count values.
The third count value would never be passed to the TextObject in
question.

Finally, MultipliedTextObject had a bug where it would simply pass the
requested count value instead of looking at its own count and
multiplying the result.
Remove extra CountingState

DefaultTextObjectProvider already wraps a CountingState around the
textobjects.
Javadoc
Fix #416.  Fix InsertMode with counts ('5ib <esc>').