compositor: remove repaint_data from compositor
Passing the repaint_data across the repaint steps in the compositor causes problems if the repaint spans multiple backends !578 (merged).
The only backend that actually uses the repaint_data is the drm-backend, and it already keeps a pointer to its repaint_data.
Therefore, an easy fix is handling the repaint_data entirely in the backend and removing it from the compositor.