Es6

Adds support for...

- arrow functions
```js
var square = x => x * x
var answer = () => 42
var add = (x, y) => x + y
```

- default values
```js
function foo(bar = 42) {}
function baz(quux = coolStuff(), fizzle = x => x * x) {}
```

- rest params
```js
function log(...params) {}
function extend(target, ...others) {}
```

- Generator functions add a `@yields` tag in lieu of `@returns` (or `@yield` if you use `@return`)