Implemented spec and wrote some code
A different approach - function queue!