[lipstick] Don't raise or lower unmapped windows

The category or other property of the window may not be set yet,
producing unwanted behavior.
Merge pull request #209 from giucam/master

[lipstick] Don't raise or lower unmapped windows
Implement a recorder interface, using a custom protocol

A separate client using the lipstick_recorder protocol can request
frames, which lipstick will provide when redrawing.
Send more information to the recorder client

This commit adds a transform argument to the frame event to tell
the client if the frame is y-inverted. It also moves the failure
case to its own event.
Add a request to lipstick_recorder to trigger a repaint