Proposal for changing the AST<->visitor interaction
Turn background inside out
Turn tags inside out
Turn Comments inside out
Turn 'FeatureElement' inside out
Turn 'FeatureElement' inside out
Turn examples array inside out
Turn examples inside out
Merge remote-tracking branch 'origin/turn-ast-inside-out' into turn-ast-inside-out

Conflicts:
	lib/cucumber/ast/scenario.rb
	lib/cucumber/ast/scenario_outline.rb
Turn features inside out
Get rid of init noise
Remove uneccesary conditional

We're using a null object (`EmptyBackground`) instead now.
Turn StepCollection inside out
Turn Step and StepInvocation inside out
Tidy
Turn table cell inside out
Remove crap
Turn table_row inside out.

Phew!
Turn OutlineTable inside out
Remove explicit forwarding of TreeWalker API

Using method_missing here makes it easier to see the few remaining
messages that need to be cleaned up.