[Don't merge] Re-add cycle/uncycle to span

@clear-y Please review and manually test these when you get a chance.