Fix leak in complete() callback of Database.each()

Add destructor to EachBaton that disposes the completed callback function.
Avoid duplication persistent callback handles in Database.each()

The current code for Database.each() creates persistent handles for its
callback functions in both "EachBaton" and "EachBaton->async" but only
uses the ones in "EachBaton->async".

So instead of duplicating the handles in "EachBaton->async" move the there
and replace the handles in "EachBaton" with dummies.