Saves the object to given database. Usage::

            item = Item(title=u'Hello')
            item.save(db)

        Collection name is taken from :attr:`MongoBoundDictMixin.collection`.

def save(self, db):
        """
        Saves the object to given database. Usage::

            item = Item(title=u'Hello')
            item.save(db)

        Collection name is taken from :attr:`MongoBoundDictMixin.collection`.
        """
        assert self.collection

        self._ensure_indexes(db)

        # XXX self.structure belongs to StructuredDictMixin !!
        outgoing = dict(dict_to_db(self, self.structure))

        object_id = db[self.collection].save(outgoing)

        if self.get('_id') is None:
            self['_id'] = object_id
        else:
            pass

        return object_id