The restaurant kata from Greg Young's Advanced course