Cleaned up code (js-hint/js-lint friendly) & added isLogged routines

1.  Normally I would do small discrete patches, but JS-Lint/Hint was showing lots of little "potential" things that "could go wrong.      So sorry for the massive patch from hell...  If you really want it in discrete patches; I can do it; but what a pain...  LOL

2. <Array>.forEach is a JS 1.6 construct not all browsers support it (older ones don't); so I replaced them with the older but fully supported "for (var a in b)" style code.  (Also eliminated the extra "self" variables that aren't needed)

3. Added isLogged function as I frequently want to do:
  if (log.isLogged(SimplyLog.ERROR)) { 
     log.error("Error Stats", computational_intensive_error_function()) 
  };
  if you don't wrap it in the "if"; then the computational_intensive_error_function is ran every time, even thought the output is not...

4. I made the image more "require"/browser friendly, eliminating the "root" variable.