Extract Waiter to own class