Make better use of the new ast-types Type.prototype.assert method.
Implement a printer for ArrowFunctionExpression.
Implement a printer for ForOfStatement.
Implement a printer for ModuleDeclaration.
Implement a printer for MethodDefinition.
Implement a printer for Path.
Implement a printer for SpreadElement.
Implement printers for all XJS* extension types.

Types implemented:

  - XJSAttribute
  - XJSIdentifier
  - XJSExpression
  - XJSElement
  - XJSOpeningElement
  - XJSClosingElement
  - XJSText
Implement a printer for YieldExpression.

Also respect the .generator field of Function subtypes.
Reuse {Object,Array}Expression printers for {Object,Array}Pattern.
Add stub printer cases for not-yet-handled types.
Implement a printer for PropertyPattern.
Bump NPM version to 0.3.0 in preparation for publishing.

Jumping a minor version to acknowledge that Recast has now become aware of all Harmony and FB-Harmony types currently in use by Esprima.