Implement fd passing.

This will now allow /dev/input be opened.
Compositor binary must be set suid root or suid group to whatever can
open/read from /dev/input (where latter is recommended). The compositor
will run as user, but before privilege dropping is done, child process is
started that handles file open requests by compositor in certain limits.