Hide globalconf.L

Everything that needs the lua_State should create a local variable like this:

  lua_State *L = globalconf_get_lua_State();

This ensures that the compiler warns if there are two variables with name "L" in
scope. The idea here is that it should become harder to accidentally use the
global lua state instead of the state of the current state.

While writing this commit, I found another place that gets its wrong: Reading
client.focus from a coroutine was broken, since it was returning the result on
the main thread instead of the current one.

Signed-off-by: Uli Schlachter <psychon@znc.in>
timer: Move from C to lua as gears.timer

No API-change (besides the obvious no-longer-a-global-object) intended.

Signed-off-by: Uli Schlachter <psychon@znc.in>
textclock: Round timeout so that displayed time is more accurate

Signed-off-by: Uli Schlachter <psychon@znc.in>
client: Include c.name in the result of tostring(c)

Signed-off-by: Uli Schlachter <psychon@znc.in>
timer: Add a backwards-compatibility hack to awful

Signed-off-by: Uli Schlachter <psychon@znc.in>
Implement icon_pixmap and icon_mask from WM_HINTS (FS#1297)

Fun fact: ICCCM specifies that icon_pixmap must have depth 1. Xterm uses a
pixmap with depth 24. Yay... As such, I don't have any test for the depth == 1
case and will just assume that it does the right thing. If it doesn't, I bet no
one will notice anyway.

Signed-off-by: Uli Schlachter <psychon@znc.in>
Merge branch 'master' of https://github.com/awesomeWM/awesome into local