Tu problema en particular se resuelve aprendiendo JavaScript. Usa la sintaxis de llaves con algún algoritmo para definir el nombre.
Código Javascript
:
Ver originalthis['instance' + i] = new AmazingObject;
PD:
Modelador de objetos => Factory.
Leete 'Design Patterns' del GoF (googlealo) o esta versión más "noob friendly" (a mi me encantó en su momento, lo sigue haciendo :) ):
http://amzn.com/0596007124
PD2: De nuevo, aprende JavaScript sin obsesionarte con objetos. En tu ejemplo estàs leakeando las variables 'x' e 'i' al contexto global.
PD3: Es PrueBa.