backend-native: Make sure to chain up to the parent post_init
xrandr: Rewrite to be based on the X11 display connection
cursor-renderer: Remove bogus assert
backend: Clean up slightly
cursor: Remove cursor tracker from API
cursor: Make load_cursor_on_server public
display: Remove grab_xwindow from the public API
display: Always grab the root window

This grab needs to move to the backend, where we won't be able to
discriminate between different windows
display: Remove the screen from set_grab_op_cursor
cursor: Save the original MetaCursor a cursor came from

So we can recreate it as a server-side cursor
display: Clean up set_grab_op_cursor
display: Pull the grab cursor from the cursor tracker

This might look silly, but just wait...
backend: Add grab_device / ungrab_device

This makes sure that we take active grabs on the correct connection.
Passive grabs are still broken.
x11: Make sure to handle RANDR events from the right connection
monitor: Remove handle_xevent as a generic method
idle-monitor-xsync: Retrieve your xdisplay from the backend
idle-monitor-xsync: Clean up includes

Conflicts:
	src/backends/x11/meta-idle-monitor-xsync.c
backend-x11: Add KeyPress / KeyRelease to mask
compositor: Select for input on the output window the right display
compositor: Take modal grabs through the backend as well