first implementation (and test) of Deque