Fix #443

Looks like these functions were removed by
d87967ed4001d8f222c24827b43b31240795be4c and not tested so nothing caught it
:-(
clock widget supports other timezones
Add background gradient documentation
stack: 'return' in configure for windows not owned by this layout

The first check in the configure function tries to find the window in
the stacks, and if it's not found, it hides it. This commit adds a
return after hiding it, because there's no reason to continue
configuring it.
drawer: cleanup - turn draw_fill into draw(fill=True)

The body of both functions looked copypasted.
group: Catch and avoid propagating exceptions in layout()

Just a way to prevent misbehaving layouts from breaking more than they
should.
default_config: Stack has a 'num_stacks' param, not 'stacks'
add support to display the volume(widget) states as emoji characters
Don't import ThermalSensor twice
Drop Xlib from tests, use xcb

Closes #447
Move cmd_(eval|function) to all objects of the ipc tree

They were in the manager object only previously, now they are in
CommandObject, which means all subclasses have it (including manager)

Now it's possible to use eval() from any part of qsh, for example:

    group['term']> eval("self.windows")
    (True, 'set([Window(st)])')

Or have keybindings that work on a specific kind of object:

    Key([mod], "x", lazy.window.function(lambda w: w.setOpacity(0.5))),

Figuring out any useful things to do with these is left as an exercise
for the reader.
Clean up unused imports
Enable travis tests
Travis builds don't have SwapCached in meminfo
Add qtile Travis-ci status to README
Make Python 2.6 compatible

Dict comprehension and set literals are introduced in 2.7
Fix AttributeError recursion error
Fix test/test_command.py

Fix tests for commands added to CommandObject in
743a8a7be839bb1179580dd38f3e791ba7b839ab
Unpack _NET_WM_DESKTOP as an integer

This value should be an integer (I think) and needs to be an integer to
be compared to `len(qtile.groups)` on libqtile/window.py L690.  Doing
this, however, introduces a problem with the Python 3 tests, and so it
always just returns `None`.
Encode the font family as bytes to parse to C