Use some new xcffib api

This uses some of the new stuff available in xcffib not in xpyb, namely `.to_atoms()` and `.to_strings()` to parse returned values and using synthetic events. Using the git xcffib, the tests pass fine for me, however, Travis seems to have some problems with the synthetic events. Not even sending them, but just packing them. Using only 7e7cab282da2e6e6a20401bcccd2da11e81214e1, which just tries to pack the data and compare it to the struct packed data causes Travis to hang https://travis-ci.org/flacjacket/qtile/builds/39116342. I have no way of saying where this is coming from.