implementing the Queue #1

Fixes #1