[+] self object factory so you can define a factory method on a object instead of calling the constructor