'returns the library block associated with the given key. If no such library exists,
it returns None
:param library_key: must be a LibraryLocator'

@strip_key
@contract(library_key='LibraryLocator')
def get_library(self, library_key, depth=0, **kwargs):

    try:
        store = self._verify_modulestore_support(library_key, 'get_library')
        return store.get_library(library_key, depth=depth, **kwargs)
    except NotImplementedError:
        log.exception('Modulestore    configured    for    %s    does    not    have    get_library    method', library_key)
        return None
    except ItemNotFoundError:
        return None
