Completed factories, added one unit test