Add prelimary compositor interface

This PR adds a prelimary version of the compositor's interface.
And do what in the other case?
And why?