Added code to preserve the name of named groups when prettyfying the ouput.
Made the paramter regex lazy to fix bug where multiple arguments are smashed together.
Altered the output of the StepPrettyfier so that it returns arrays. This allows one base sentence to build multiple output sentences.
StepPrettyfier now spots optional groups and splits into two steps.
The api code to filter results flipped the array keys and values around. This caused a problem because the method name was not unique. Now both the method name and step sentence get put in a single array then filtered so no results are omitted.