This reverts most of commit d69ccc7bdd, because it is now handled by wlroots. The iterator -> callback renames have been kept in place.
d69ccc7bdd