Make more use of DefineConsoleMethod

Resubmission of #887 with some fixes.
Do we? Seems like it should definitely return an integer.