Added a Factory Method example - UNFINISHED