Add Abstract Factory Pattern Demo