Wayland: Rework frame notification to be protocol-compliant.
The set of requested frame notification callbacks is a wl_surface property, not a wl_buffer property.
That is, if a client commits a wl_buffer and a frame callback, then commits *another* wl_buffer and frame callback before the compositor has triggered the first callback the first access should trigger *both* frame callbacks, in order requested.