Fixed a bug that singleton method returns not singleton instance.
Added a flyweight pattern.
Added a proxy pattern.