development composite pattern
changes singleton/composite/factoryMethod
changes factoryMethod and strategy
solved issues - resolve #11
Merge branch 'source'