Swapping out change interval handling to dedicated ChangeInterval type