Factory and Singleton mashup