A library for providing a common set of document storage functions with multiple providers