An ordered collection of Tuples (possibly) with multiples. Data is
stored unsorted as it comes in, and only sorted when it is time to dump
it to a file or when the first iterator is requested. Experementation
found this to be the faster than storing it sorted to begin with.
We allow a user defined comparator, but provide a default comparator in
cases where the user doesn't specify one.
This bag is not registered with SpillableMemoryManager. It calculates
the number of tuples to hold in memory and spill pro-actively into files.