Factory Method.
Merge pull request #3 from matscube/factory

Factory Method.