Remove instance properties form the prototype and make them be instance props (js hidden classes type).
Whitespace cleanup
Add explanatory comments