Allow open_process_all to return an accumulated result

You can now provide an initial Acc value to open_process_all and
receive the accumulated result as the return value of the
function. This allows the function to be used not just for its
side-effect of loading ETS tables if desired. It also better
encapsulates things since a badly behaved IterFun would break things
in hard to understand ways.
Use basename of path as name instead of always using "foo"

This works for the example database.
Add simple perf test for couch_util:to_hex
Merge branch 'sf/return-acc'