Created new user settings type

This created the new user settings storage type,
IVimApplicationSettings, which has the appropriate API to replace the
old ILegacySettings type.  Has the same functionality at this point but
lacks the migration code from the old settings.
Swapped in the new settings store

Swapped in the new settings store in place of the old one
Fixed settings implementation

Fixed the settings implementation to properly check that the setting
exists before using and to report any exceptions that it gets.  The
check is unfortunate but necessary to prevent exceptions from happening
in common scenarios.
Implemented the settings migration code
Fixed up the unit tests

There were a few minor breaks with the new interface that needed to be
cleaned up.
Merge remote-tracking branch 'origin/master' into settings
Removed the conditional compilation

For the longest time I've used conditional compilation to have code that
is shared between 2010 and 2012.  The time has come for me to add more
complex code to a specific version and I can no longer keep the #ifdef
solution.  It's too hard to manage.  Switched to full projects.
Removed references to Dev10 + Dev11

Dev10 and Dev11 are only really understandable by someone familiar with
the Visual Studio version model.  The names 2010 and 2012 are much more
easily recognized by the casual developer
Moved logic back into VS shared code

Now that VS has a different file for SharedService implementation per
version of Visual Studio it made sense to move a lot of the logic back
into the shared code.  This reduced teh number of copies of the logic to
1 vs. # of visual studio versions.  The logic in the shared code is
smaller now and is just simple data access.
Got Microsoft.VisualStudio.Settings.dll out of the VSIX

This changed fixed the MsBuild warning I was getting.  As a side bonus
it removed the Microsoft.VisualStudio.Settings.dll file from my VSIX
output.  By moving the PlatformTarget to x86 on all VS specific DLLs it
caused the VSIX task to believe the dependency was properly met and
hence no longer needed to deploy Microsoft.VisualStudio.Settings.dll
Disabled mode now applies to newly opened files

The disabled mode feature (Ctrl+Shift+F12) now applies to files which
are opened after the command is run.  Previously it only applied to the
set of files which were open when it was run.

closes #929
Inconsistent spacing in get, set declaration
Bring code up to coding conventions

Bring some older code up to current conventions
Removed a bit of redundant info in Settings

SettingValue can now provide it's kind without unnecessary calculation
Fixed RequireQualifiedAccess usage

Several unions lacked the attribute that is used, by convention, on all
discriminated unions in the code base
Cleaned up some names

Now that RequireQualifiedAccess is used there is no need to postfix the
names with Value and Kind
Tightened up the way default values are handled
Added the 'path' and 'cdpath' settings

This adds support for the 'path' and 'cdpath' options.  These options
are simply present at the moment.  No existing functionality takes
advantage of them at the moment. This is a necassary building block for
other features.
<Leader> replacement should be case insensitive

The <Leader> replacement was incorrectly doing case sensitive
replacement instead of case insensitive replacement.

closes #860
Removed UseEditorSettings

The UseEditorSettings option was an ancient option that I added when my
support of Vim settings and synchronization with the editor was
extremely poor.  It was a way to opt out of my bad behavior.

Now the settings support is much better.  Instead of this option we use
the presence or abscence of the VimRC file to determine if VsVim or
Visual Studio settings should win