Add buf_clear, define custom buffer size, streamline poll/react logic
Add Xinerama support

Hotplugging monitors is not yet supported, the scan_monitors() function
is currently only called on initialisation (will require listening on X
events).