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
Added DecoratingIterator and DecoratingIteratorWithArguments

Originally based on Marcus Börgers class, removed dead code and
added optional arguments array in a subtype.
Added AggregatingIterator
Added PropertyIterator
Updated autoload.php

Works now more fluently on subdirectories
Updated SeekableDebugIterator

- Minor: TODO notes
Updated ForeachIterator

- Minor: TODO notes
Updated DebugIterator

Make DebugIterator::varLabel static because it's sort of a trait.
Updated DebugIteratorIterator

Half-Heartly port to DebugIterator::varLabel
Updated DebugIterator

Make DebugIterator::varLabel static because it's sort of a trait.
Updated DebugIteratorIterator

Half-Heartly port to DebugIterator::varLabel
Updated IteratorTestCase

Allow to give $message for both common assertions like it is common in PHPUnit assertions.
Stopped adding NotFilterIterator (postponed)

The current implementation idea does not work, but there is a way to do it.

This requires to have CachingIterator under test first which richt now is
not the case so needs to be done first.
Updated DebugIteratorIterator