Fixed a > -> >= error in the testing code for heap.lisp
Heaps are still valid if you have equal elements on sequential
removes.

Fixed a bunch of issues with int-heap relating to growing the array
backing the heap to store new elements.  I forgot that, if you're not
doing search, the keys aren't guaranteed to increase, so you might
need to grow the array to the left as well as the right.

Similarly, you can't just blindly double the size of the array when
adding a new key.  You have to make sure the grown array can contain
the new key.