Keyboard model

As you requested, I am fixing and separating my previous pull request:
This patch add KeyboardModel to control and monitor leds and layouts. C++ side.
This patch also adds setting to enable/disable numlock on greeter start. #66