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
* @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.