This adds an alternate way to use wlr_damage_ring without the concept of buffer age. Buffer age is a concept inherited from EGL but there is no real reason why we should continue to use that in wlroots. Instead, use wlr_buffer pointers.
Eventually, we should be able to remove the buffer age based functions.
This is an alternative to !4253 (merged), which tries to be a bit simpler.