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.