Stack that can get smallest in O(1)