Fix ExportDeclaration field types and default values

The main confusion here was that `AssignmentExpression` means something different in the spec from what it means in the AST type hierarchy, where it actually has to involve an assignment operator like `=` or `+=`. In the spec, an `AssignmentExpression` is just a slight restriction of the general `Expression` type, so that's what we should be using here.

Closes #28.