Make more use of DefineConsoleMethod

Resubmission of #887 with some fixes.
```spawnClass``` is not optional but added on defualt args.