Adds support for properties.
- Bugfix: SimpleConstructor in Class.defineConstructor could return undefined.
- Minor: optimizes Class.convert to not convert objects if the type is already
  what was requested.