Port Unmanaged::track to XCB
Uses Xcb::WindowAttributes and Xcb::WindowGeometry instead of XLib
variant. In addition it uses the XServerGrabber to ensure that the
xserver grab is removed in all code paths.
A new macro is added to utils.h to make the grabbing of XServer in
current context more obvious.