Chose 1.4, and offered one solution, but I'm going to have to check on the template of FIFO to see if what i'm doing is legal.
Altered 1.1 after rereading the question again and using a FILO approach.
Altered 1.4.