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.
I would call this `maybe-parse` instead. This function is different from the existing `match-` functions in this package: it doesn't work with tokens, and it actually returns the consumed value.