Added support for Keyman keyboards not associated with a language.

Conflicts:
	.gitignore
	Palaso/Palaso.csproj
	PalasoUIWindowsForms/PalasoUIWindowsForms.csproj
Reverted Palaso.csproj

Conflicts:
	Palaso/Palaso.csproj
Fixed Keyman switching bugs to accommodate different settings for the "Switch Windows language when a Keyman keyboard is selected" option.
(TimS): Fixed keyboard not getting changed programatically if the user changed the keyboard manually instead of going through Palaso
In order to use Palaso in 64-bit version of ParatextShared, we changed most of the projects (with the exception of a few of the tests) to build for any CPU instead of x86.
Added backward-compatibility support for legacy Palaso and Paratext (renegade) keyboard IDs.
Fixed infinite recursion bug in DefaultKeyboardController.

Conflicts:
	BuildTaskTests/Palaso.BuildTask.Tests.csproj
	Palaso.MSBuildTasks/Palaso.BuildTasks.csproj
	Palaso.Tests/Palaso.Tests.csproj
	Palaso/Palaso.csproj
	PalasoUIWindowsForms.TestApp/PalasoUIWindowsForms.TestApp.csproj
	PalasoUIWindowsForms/PalasoUIWindowsForms.csproj
	SIL.Archiving.Tests/SIL.Archiving.Tests.csproj
	TestApps/TestAppKeyboard/TestAppKeyboard.csproj
(TimS): Revert changes I don't want as part of this branch.
(TimS): Reverted unintentional change
(TimS): Fixed formatting per review comments. Removed Keyman DLLs from the Mono builds.
Merge pull request #68 from sillsdev/DirectKeymanSupport

Direct keyman support