Registers a new document.

        .. warning: You can not use any relative links inside a given document.
                    For instance, sphinx's toctree, image, figure or include statements do not work.

        :param content: Content of the document
        :type content: str
        :param name: Unique name of the document for documentation purposes.
        :param plugin: Plugin object, under which the documents where registered
        :type plugin: GwBasePattern

def register(self, name, content, plugin, description=None):
        """
        Registers a new document.

        .. warning: You can not use any relative links inside a given document.
                    For instance, sphinx's toctree, image, figure or include statements do not work.

        :param content: Content of the document
        :type content: str
        :param name: Unique name of the document for documentation purposes.
        :param plugin: Plugin object, under which the documents where registered
        :type plugin: GwBasePattern
        """
        if name in self.documents.keys():
            raise DocumentExistsException("Document %s was already registered by %s" %
                                          (name, self.documents[name].plugin.name))

        self.documents[name] = Document(name, content, plugin, description)
        self.__log.debug("Document %s registered by %s" % (name, plugin.name))
        return self.documents[name]