Simplified the interface.

Sibling iteration more simple to understand and can be oveloaded.