'Add an item to the library and return it.
Creates the item by passing the parameters to `create_item()`.
If `path` is not set in `values` it is set to `item.destination()`.'

def add_item(self, **values):

    if ('path' in values):
        values['path'] = util.normpath(values['path'])
    item = self.create_item(**values)
    item.add(self.lib)
    if ('path' not in values):
        item['path'] = item.destination()
        item.store()
    return item
