ES6 module syntax support

Provisional support for es6 module import/export syntax.

Because we use this syntax is a growing majority of our projects, I had to implement it. Obviously this doesn't track a spidermonkey implementation that doesn't yet exist, but for those that want provisional support, it could prove very useful (per the discussion in #139)

I'd love any feedback.
If I'm reading the spec right, `Declaration` (one of the options inside `ExportDeclaration`) is defined as

```
HoistableDeclaration
ClassDeclaration
LexicalDeclaration
```

Which means it can be a function or generator declaration, a class declaration, or a let/const statement.