Added ForeachIteratorWithCount
Updated DebugIterator events

Added more events and also show values to better differentiate while
debugging.

- Added parent::valid() value as event
- Added parent::current() and parent::key() value as event
- Added afer parent::rewind() and after parent::next() as event
- Updated by adding "()" to event messages for previous iterator methods
- Make varLabel() method final
Updated SeekableDebugIterator events

Updated SeekableDebugIterator events as well as
MagicDebugIterator events.

SeekableDebugIterator current() and key() are mapped
to the inner-iterator object instead of the parent
because IteratorIterator is caching and then proxying
resulted in unexpected behavior.

- Added "()" to event message foi seek method on SeekableDebugIterator
- Added $innerIterator::current() and $innerIterator::value() as event
- Switched to varLabel() method
Make DebugIterator and IteratorDecorator

Change was done because it was noticed that
IteratorIterator::rewind() calls inner iterators
current() method and then not any longer on current().

Ergo: InnerIterator caches/pre-exectes calls to valid(),
current() and key().

- Introduce DebugIteratorModes Interface
- Copy a lot of code, inheritance differs
- Fix: Require autoload.php relative to __DIR__ not CWD
- Code-Style: debug-iterator.php
- Code-Style: DebugIteratorIterator
Added FunctionIterator
Added NumericKeyIterator
Added Example php-object-iteration.php

Standard PHP object iteration example with foreach
Added Example rewind-norewind-iterator.php