Fixing minor issues with mw.loader
* Using $.isArray/isFunction instead of "instanceof" or typeof.
** "instanceof Array" can throw SyntaxErrors in some cases
** Some non-functions return 'function' as their type
* JSHint:
** using === to compare to null (faster and safer)
** Missing semicolons
** Mixed spaces with tabs
* Added mw.log call when module is loaded
* Added support for custom prefix to mw.log (the mw.config value for 'mw.log.prefix' is pretty ugly as it sets it globally, when calling a function later again it's no longer the same. Perhaps just get rid of it)