Another nit as I poked around, there seems to be a push to move from var in hasOwnProperty loops to:

`Object.key(this.map).forEach(function(key) {});`

Consider the change.