insertWithOverflow
Adds a value to an LongHeap in log(size) time. If the number of values would exceed the heap's maxSize, the least value is discarded.
Return
whether the value was added (unless the heap is full, or the new value is less than the top value)