feat(syntax): override module name parsing

Provides syntax to allow the overriding of module names, which is broken in the case of modules containing periods (a common convention).

Example:

```js
/**
* @ngdoc function
* @name ui.bootstrap.$modal.ModalInstance
*
*  // Add this to avoid using the parsed module name, which is often incorrect
* @module ui.bootstrap
* ...
*/
```

Using the module name parser, the module name would end up being 'ui'.  However, this is not necessarily acceptable for projects like this where the module name contains a domain-name looking pattern to denote the type of module / package and authors, as well as the package name itself and finally sub-package components.

In short, this feature is somewhat necessary, unless changes are made to the syntax to use the directive-style syntax (or similar) for each and every object type.