Define properties in constructor

[Defining all properties in the constructor is a good idea](http://v8-io12.appspot.com/) and applies to both Chrome and Firefox's JavaScript engines.

This PR mops up a couple of loose ends.