Consume optional semicolon after macro export

```javascript

macro foo {
  rule {
    // input
  } => {
    // output 
  }
}

// If an export is followed by the optional semicolon it currently isn't consumed
// by the parser so is left in the output.
export foo;