initial library and tests.