Factory pattern.

Now we can create factories muahaha!