Bug 641 NEWT: X11 Deliver keyCode layout independent, keySym layout dependent and UTF-16 keyChar value

On X11, the layout dependent keySym was not delivered [1],
as well as the UTF-8 to UTF-16 translation was missing [2].

[1] is solved using XLookupString w/o ShiftMask
[2] is solved using JNI's NewStringUTF, which takes UTF-8.
NEWT/Native: NewtCommon_GetJNIEnv(..) adding 'asDaemon' flag, used by all OSX JNI attachments to save time since detachment is skipped.
Bug 641 NEWT/X11: Deliver 'J_VK_WINDOWS'; keySym is layout independent for dead-keys (zero keyChar); For 'unshifted' keySym's also unmask Ctrl and Mod* states
NEWT/OSX: Remove USE_SENDIO_DIRECT conditional compilation, by now it's clear we need to enqeue the events
NEWT KeyEvent: More tight definition of isPrintable(), i.e. must have defined keyCode [and keyChar]; VK_KEYBOARD_INVISIBLE -> isActionKey
Bug 641 NEWT/OSX Deliver keySym, derived from the current layout's lower-case UTF-16 character.
Bug 641 NEWT: Refine definition of keySym, i.e. for printable keys, keySym is the 'unshifted' UTF-16 char value ; Add isPrintable() to toString().
Fix Bug 703: Quaternion slerp function. Disclaimer: Not tested / No unit test.
LinuxEventDeviceTracker: shift-modifier

Signed-off-by: Xerxes Rånby <xerxes@zafena.se>
LinuxEventDeviceTracker: 4 space indentation

Signed-off-by: Xerxes Rånby <xerxes@zafena.se>
LinuxEventDeviceTracker: ALT, ALT_GRAPH & CTRL modifiers.

Signed-off-by: Xerxes Rånby <xerxes@zafena.se>