Add a hook for keyboard layout change
Add two more widgets:
- CurrentLayoutIcon  (in currentlayout.py)
- KeyboardLayoutIcon (in currentkeyboard.py)
Revert "Add two more widgets: - CurrentLayoutIcon  (in currentlayout.py) - KeyboardLayoutIcon (in currentkeyboard.py)"

This reverts commit d0a4467ec2558975101361c35388ad10f8db8e45.
Add two more widgets:
- CurrentLayoutIcon  (in currentlayout.py)
- KeyboardLayoutIcon (in keyboardlayout.py)

Add a class (thus another widget), to display the current layout with an icon.
In this case, if the mouse pass over the widget, the text version is printed in
a popup window.

Add to the widget the ability to display the current month calendar
in a popup window when the mouse is over the widget.
In this case, add also two possible actions:
- left click : show previous month and so on
- right click : show the next month and so on

- Minor modification for the selection and printing of the current layout because
sometimes, the layout field contains several inputs 'fr,us' for example.
- Add of the parameter with_variant (default=False) to print or not the variant
information in the text mode widget.
- Add an icon mode widget, displaying the flag of the current layout. If click it
will change the layout, if mouse is over the full layout and variant information
are displayed in a popup window.
- replacement of the check of layout changed procedure to not do an active test
(check every second), but use instead a hook with a special logical event
("keyboard_layout_change"). It is less cpu consuming.

Add functions to handle PointerMotion and Enter/LeaveWindow events.
Add an attribute to contain the popup window generate by a widget of the bar.

Add the PointerMotionMask
Add default methods like the button_press one but for when the:
- mouse enter the widget
- mouse leave the widget
- the mouse pointer is over the widget
Introduce also the management of the height of widget event if it is not
used (height is fixed by the bar height). But the self.height value is needed
by another module (notify_window).
Add the LeaveWindow event to be managed for Internal window class.
Add the command to delete other popup window if some when the mouse pointer 
is over the widget.

- Delete the LeaveNotify event from the default ignored events
- Add MotionNotify and LeaveNotify to be handle
- Define a default empty handler for LeaveNotify
A new class of object acting like a floating 'bar'.
Widgets can be put in it.
It is called from a widget.
Used for example to display a popup window (see clock widget).
Merge branch 'develop' of git://github.com/qtile/qtile into develop

Conflicts:
	libqtile/widget/base.py
	libqtile/widget/clock.py
	libqtile/window.py
Add two more widgets in already existing widgets:
- CurrentLayoutIcon  (in currentlayout.py)
- KeyboardLayoutIcon (in currentkeyboard.py)