Generic Java Queue ADT