Add queue.map() and tests