Html formatter failing with undefined steps

Having an scenario outline with undefined steps, and using the ```--expand``` option cause the html formatter to fail. 

    undefined method `actual_keyword' for #<Cucumber::Ast::Step:0x96985e4> (NoMethodError)

 Turns out that ```after_step_result``` is called for every ```Cucumber::Ast::StepInvocation```and every ```Cucumber::Ast::Step```. While the former support the ```actual_keyword``` method the later does not. 

The change will make use of the ```actual_keyword```, only of the step class supports it, and default to the keyword, that comes as a param, if not. 

------------------------

     Feature:

        Scenario Outline:
          Given an undefined step
        
        Examples:
          |foo|
          |bar|

```$ cucumber --format html --expand```

```undefined method `actual_keyword' for #<Cucumber::Ast::Step:0x8b29f78> (NoMethodError)```