Lazy load modules as much as possible in gDevTools.jsm (bug 986841). r=dcamp

Also, ensure the devtools main module is only loaded once as it may have observable side-effects (like breaking the browser_toolbox_options.js test).
Miscellaneous lazification and cleanups in devtools framework code (bug 986841). r=dcamp