unit test for -[CWBinaryHeap allObjects]
minor refactor for better readability
removing assert since this will crash on 0 objects and doing a compare

If the binary heap has 0 objects and we do a compare then there will be
no block present and we will automatically hit this assert. So instead
the best that can be done is to log the failure and return inaccurate
results