Add OuterIterator interface
Create stub for IteratorIterator
implement all IteratorIterator methods in the simple case
create AppendIterator
Move _init_instance_class() out of BuiltinClass
kill unused attribute
Begin implementing @k_Foo.def_method() decorator to replace @wrap_method()
Allow dummy method declarations in def_class()
Test def_method() and add some validation
fix a test
Validate builtin classes in tests, not at definition time.

Validation only makes sense when all the methods have been defined,
so it can't be done in def_class() any more, because of def_method().
Convert the reflection extension to def_method()
Merge branch 'better-class-defs' into spl-iterators
Use def_method() for ArrayIterator
flesh out some stubs in ArrayIterator
Remove unnecessary space argument from W_ArrayObject._current()
Naive implementation for next(), key(), rewind(), valid()
fix translation
Begin implementing ArrayObject
ArrayObject is a special snowflake when typecasting it to array