Basic library and cli functionality