Handle default param values

JSDoc params can provide a default value by wrapping the param name in square brackets (to make it optional) then putting the default value after the equals symbol:

```
@param {String} [paramName=default param value]
```

This PR provides support for this, until doctrine is updated to allow configurable JSDoc tags.  I have added a new test case for the default value and all the other tests pass.

It would be great if you could merge this in as it is blocking me from using doctrine in a project.