Added 'reverse' and untested queue implementation