Now creating properties on the function's prototype rather than in each ctor.
Updated demo scripts.