implement cooking interface

check next step with current time,
push step into waiting queue.
not fully implemented
cooking functionality fully implemented

still some bugs to be fixed.
block the user until the waiting step is finished.
current step cooking time may accumulate?