Provides a "classical" Stack abstract data type and a ClearStack ADT which is a Stack with an iterator.