create a factory with default options