Version 1 of Week 4, Factory Class Added