backends/drm: do fewer atomic tests for cursors
Tests for updating the texture and moving the cursor are combined where possible, and only up to one test is done per frame. As frame scheduling for cursor updates depended on the state being updated, that's now moved to the Scene (where it should be anyways)