Use the location of the row for instantiated outline steps

When steps are instantiated from outline steps, they get the location of the row (instead of the location of the outline step). 

To make sure that a test case of an example row still matches the steps of the Scenario Outline, the instantiated steps know of the outline step that created them.

Merge only after cucumber/cucumber has been updated to expect this behavior (cucumber/cucumber#730).
I'm not keen on this change because it only suits AST steps that were created from outline steps. For normal scenario steps this attribute doesn't make sense. Or did I misunderstand something?