Replace Ratpoison with a smarter croutoncycle and fix daemon persistence

Ding dong ratpoison is dead!
This should provide a better path to handling multiple monitors (need to make a fake Xinerama .so to plumb up the xrandr data).

This also now treats host-x11 windows as first-class citizens in croutoncycle, and you can now cycle through simultaneous xorg, xephyr, and host-x11 displays in a reasonable way.  We should be able to make the xbmc target not go through xephyr, for instance (#376). 

This needs wider testing, and it'd be helpful if @drinkcat could fix the croutonclip logic (windows are no longer mapped and unmapped).  This pull request is for both code review and to track issues that crop up in testing.

An easy-to-install bundle of this branch is available [here](https://docs.google.com/uc?export=download&id=0B1QUtoJwc9L3NmxJcmVqV0ZFSFE).