Add keyboard type interface defintion

Suggested-by: Marcel Mueller <com2040@gmail.com>
Add wayland keyboard implementation

Suggested-by: Marcel Mueller <com2040@gmail.com>
Add interface for ws_keyboard type

Suggested-by: Marcel Mueller <com2040@gmail.com>
Add stubs for ws_keyboard type method functions

Suggested-by: Marcel Mueller <com2040@gmail.com>
Implement xkb_init()

Suggested-by: Marcel Mueller <com2040@gmail.com>
Add update_keymap() helper

Suggested-by: Marcel Mueller <com2040@gmail.com>
Add keyboard to compositor context

Suggested-by: Marcel Mueller <com2040@gmail.com>
Add implementation for ws_keyboard_get()

Suggested-by: Marcel Mueller <com2040@gmail.com>
Add implementation of ws_keyboard_send_keymap()

Suggested-by: Marcel Mueller <com2040@gmail.com>
Add implementation for ws_keyboard_send_enter()

Suggested-by: Marcel Mueller <com2040@gmail.com>
Prepare input device code for keyboard events

Suggested-by: Marcel Mueller <com2040@gmail.com>
Add implementation for get_resource()

Suggested-by: Marcel Mueller <com2040@gmail.com>
Add implementation for ws_keyboard_send_leave()

Suggested-by: Marcel Mueller <com2040@gmail.com>
Implement simple keyboard focus

Suggested-by: Marcel Mueller <com2040@gmail.com>
Add offset to event keycode

Suggested-by: Marcel Mueller <com2040@gmail.com>
Add deinit callback for ws_keyboard
Merge pull request #325 from matthiasbeyer/add-pass_keyboard_events_to_app

Keyboard support
Add finalization for event messages
Add keys for event deserialization
Add states for event deserialization