swapchain: Refactor to store age implicitly in list
Instead of storing the age in each slot with no defined order, instead put previously used buffer slots in a wl_list where the youngest buffers are at the head. This guarantees that the swapchain will return younger buffers if it can.