Throw an error if two clients select for special events

SubstructureRedirect and ButtonPress need to only be selected for by one
client.
Correct event delivery for events

We need to make sure we send events to all clients that want
an event, not just the first one that wants it.
Fix getRootCoords

This should be a simple translateCoordinates, no idea why I was
being dumb here...
Fix ConfigureNotify to be up to spec

This breaks initial window placement. Will be debugged.
Correct behavior for ConfigureRequest/ConfigureNotify

As the ICCCM and server fight each other on the coordinate
system of what an XConfigureEvent should be in, we need
to add an equivalent to value_mask to tell people when values
are good or bad.
Implement SubstructureNotify

This will be used to unmap frame windows when the client window dies.
Implement UnmapNotify in the WM
Make the server global

For debugging purposes...
"use strict"