Added hasOwnProperty to empty object check.
Separated test.js into separate files to demostrate module system. Added tick marks to the warnings for easier reading.