Add HashIterator.

Current hash iteration behavior left intact for temporary back compat; it will
be removed later.
Merge HashIterator branch.

This fixes #2.  See CLOWNFISH-2.