added the shift() and pop() collection methods