Improvements to lib/console

Correctly handle null in console.log, also allow users to override how objects are displayed in the console with toString().