Updated code documentation

Allows generating a proper documentation using JSDuck.
(A custom JSDuck tag class for "licence" tag should be applied upon generation.)
That's odd. In the subclasses this is a string. I think this must be `{string|null}`.