added iteritems to layout_opts iteration

Closes #317
Remove state from window's hints

This information is available via other means, it's unused by qtile, and
putting it in hints is causing a headache. Read on for a tale of sad pandas.

Closes #318, Closes #319

The problem here is that in some cases systray icons aren't ready to be probed
yet, but we still receive map events for them. In other cases, we've solved
this by making things lazy (see bde2559a and subsequent commits). ICCCM says
that WM_STATE can be unset if a window is Withdrawn (although Qtile sets
Withdrawn instead). Unfortunately, without an otherwise unecessary change to
our xcbq API, there's really no way for us to tell the difference between "this
window doesn't exist and so you made a bad query" and "this window's WM_STATE
is not set" (although again, since we manage WM_STATE and we never unset it, it
*shouldn't* be unset).

The xcbq api is nice the way it is and we're not using state in hints at all
anywhere, so it seems the best course of action is just to avoid querying the
state property before the window actually exists. If this whole laziness thing
continues to be a problem, a change to xcbq is probably warranted. Since we
handle most BadWindow/BadDrawable errors at the top level now, it probably
wouldn't even be that painful.
Fixes to ConfigureRequest handling

* Don't crash if the window isn't currently on a screen
* Only center on the first request

Closes #321
add support to go to next unmanaged group(without screen)

ie.
lazy.screen.nextgroup(skip_managed=True)