Refactor Factory.cs out of solution, moving appropriate tests