I think we should drop the Fifo from this interface. That is an implementation detail it seems to me.