Removing qi::eoi from end_statement rule, that's incorrect behaviour and causes problems detecting newlines at end of input
Separating RunModule rule into separate unit