An abstract factory that can be used to build objects for testing was created.