Can you please make these new functions start with underscore and match our capitalization rules?  Instead of `this.onmousedown`, use `this._onMouseDown`.  We use underscore as a convention for pseudo-private variables.