Configurable traversal strategy

I'll write docs later ;)