Moved KeyboardDescriptor and Engines enum to palaso.dll
minor fix so palaso will build
Changed all input methods to activate, check if they have a keyboard and get the active keyboard using keyboard descriptors rather than name strings.
Made Keyboard field in writingsystems a Keyboard Descriptor. Ldml now writes out keyboard engine and id in addition to name.
Put in guards on Keyboard adaptors so engines don't try to activate keyboards that don't belong to them.
Changed "name" attribute to "value" to maintain compatibility with Flex and older versions of WeSay for the time being.
Changed Engines to react to requests for keyboards from an unknown engine (which is the case when a keyboard was loaded from old ldml)
LdmlAdaptor now reads old ldml into keyboarddescriptors correctly.
If finding a keyboard via it's id fails in windows ime it tries by name
Adding .gitattributes and .gitignore files