docs: def initialize_library(self, library, lib_type=VERSION_STORE, **kwargs):
          """
          Create an Arctic Library or a particular type.
  
          Parameters
          ----------
          library : `str`
              The name of the library. e.g. 'library' or 'user.library'
  
          lib_type : `str`
              The type of the library.  e.g. arctic.VERSION_STORE or arctic.TICK_STORE
              Or any type registered with register_library_type
              Default: arctic.VERSION_STORE
  
          kwargs :
              Arguments passed to the Library type for initialization.
          """
          lib = ArcticLibraryBinding(self, library)
          # check that we don't create too many namespaces
          # can be disabled check_library_count=False
          check_library_count = kwargs.pop('check_library_count', True)
          if len(self._conn[lib.database_name].list_collection_names()) > 5000 and check_library_count:
              raise ArcticException("Too many namespaces %s, not creating: %s" %
                                    (len(self._conn[lib.database_name].list_collection_names()), library))
          lib.set_library_type(lib_type)
          LIBRARY_TYPES[lib_type].initialize_library(lib, **kwargs)
          # Add a 10G quota just in case the user is calling this with API.
          if not lib.get_quota():
              lib.set_quota(10 * 1024 * 1024 * 1024)
  
          self._cache.append('list_libraries', self._sanitize_lib_name(library))