Add a prefix.

            Valid keys in the `args`-struct:

            * `auth` [struct]
                Authentication options passed to the :class:`AuthFactory`.
            * `attr` [struct]
                Attributes to set on the new prefix.
            * `args` [srgs]
                Arguments for addition of prefix, such as what pool or prefix
                it should be allocated from.

            Returns ID of created prefix.

def add_prefix(self, args):
        """ Add a prefix.

            Valid keys in the `args`-struct:

            * `auth` [struct]
                Authentication options passed to the :class:`AuthFactory`.
            * `attr` [struct]
                Attributes to set on the new prefix.
            * `args` [srgs]
                Arguments for addition of prefix, such as what pool or prefix
                it should be allocated from.

            Returns ID of created prefix.
        """
        try:
            res = self.nip.add_prefix(args.get('auth'), args.get('attr'), args.get('args'))
            # mangle result
            res = _mangle_prefix(res)
            return res
        except (AuthError, NipapError) as exc:
            self.logger.debug(unicode(exc))
            raise Fault(exc.error_code, unicode(exc))