Thanks R0J0hound, just perfect!
The problem was the nested function.
When "this" is inside a nested expression function (example called "A"), that is inside the "instanceProto" function, Calling the "A" function will get you the global object, in Strict mode, undefined (that was the trick part). That´s the reason for defining the "self"...you are right.