Fixed \ArrayClear{} and added \ForEach

\ArrayClear{} now properly makes all commands associated with a
particular array (storage and counters) undefined through
\MakeCommandUndefined{} and \MakeCounterUndefined{} utility commands.

\ForEach was added as an iterator for Arrays and Hashes that covers
their entire bounds.