add `compare` module with comparators

Take two. The heap code will follow later.
You should be able to make a `new` heap with any comparator type that implements Default. Since "Natural" is the Default that will usually be picked, but if there's a context where a different type is clear, you should be able to use `new`.