Add option scoping: local, global, default.

Global options are always set for all editors at the same time, even
when :setlocal is used.

Local options are always local, even when :set is used.

Default makes it depend on whenther :set or :setlocal was used.

Tests will use default value for local options.

Also make sure to call LocalConfigurationListeners when setlocal is
used.
Implement 'modifiable' for normal and visual mode.

TextContent implementations are wrapped with a decorator which monitors
the state of the 'modifiable' setting. If 'false', no replace or
inserts will be allowed, instead they will be silently ignored (similar
to what happens for Eclipse editors where isEditable() returns false).
Implement 'modifiable' for insert mode.

If modifiable is false, any keys other than navigation are suppressed,
making sure the user doesn't modify the buffer.
Warn user when trying to change unmodifiable file.

Print an error so it becomes clear that 'modifiable' is unset.
Move isEditable check, print error for changes.

This way, all changes will print an error 'file is not editable'.
Earlier, some commands simply went through (e.g. rt changing a
character) whereas others would silently refuse.
Implement 'syncmodifiable' flag.

When this flag is set (default), the 'modifiable' flag will be unset if
the editor reports that it's input file is readonly.

Fixes #339 for non-CDT editors.
Document 'modifiable' and 'syncmodifiable'

One is a setting taken from Vim, the other is a Vrapper compromise for
the lack of real autocmd and function support.
Merge pull request #414 from albertdev/modifiable-boolean-option

'modifiable' and 'syncmodifiable' boolean options
Update unstable update site.
Allways use KeyMapResolver to find keymap name.

Normal mode will thus use NO_KEYMAP for f/t as its buildKeyMapResolver
function gets that passed in from getKeyMapsForMotions() in
CommandBasedMode.

Fixes #411.
Reimplement omap keymap resolving.

There was no state-based keymap resolving for omap yet, so add all
states for operators to the buildKeyMapResolver methods.
Add tests for remapping.

Some have their status ignored because they need some work elsewhere.
Only use "mouse visual" when Vrapper is enabled.

In the past, insert mode couldn't go to (insert) VISUAL. Now the
ISelectionChangedListener need to actually check Vrapper's status
before switching modes to see it Vrapper is enabled.

Fixes #417.
Update unstable update site.
Fix #398.  Map common Vim-style regex characters to their equivalent
Java-style regex characters.
Remove reference to BREAKPOINT_TRIGGER

This static variable should only be used temporarily, but it got
accidentally committed.
Update javadoc for Count*States
Allow extra count before switch register command

Remaps which use the switch register command always put the count at the
front because it can obviously not be included in the remap itself.

Vrapper would throw away this number and reset the command state
machine, resulting in all kinds of strange results. Adding this extra
count also allows for more crazy schemes, e.g. 2"_2dd
deleting 4 lines thanks to multiplication.

Added tests to verify the behavior in Normal mode.

Fixes #409.
Test count before switch register in remaps

See #409.