moved Hook menu to the right side (in front of settings)
added public HOOK_MANAGER.AddMenuItem(caption, handler) function
- fixed "Hook" link (which I broke in my last update)

- simplified blank href handling
code style compliance
- use strings instead of integers as script IDs, which allows for other sources than USO (e.g. extraQL)

- HOOK menu is now the last menu on the left side of the menu bar
- added initScripts()/initExtraQL() methods to detect and use the local extraQL HTTP server instead of qlhm.phob.net as a script source
- added parseScriptHeader() method to parse user script header fields directly from the script source to allow script sources without separate .meta.js files
- use $.getScript(...) to inject scripts from extraQL to preserve script file name for log and error messages
- minor code cleanup
- TODO: modify QLHM to allow input of a script source code URL for script sources other than USO
- fixed issues when converting existing storage data with integer script IDs. storage.scripts.available and .enabled are now objects/hash-tables instead of arrays

- addMenuItem() uses a timer to rebuild the HOOK menu
- cleaned up log messages to reduce flood during startup
- fixed: scripts didn't load from QLHM online repository due to $.getScript().fail() never being executed

- fixed: header fields are no longer duplicated by parseScriptHeader()
- fixed: only scripts marked with @unwrap are allowed to be injecting into global scope

- fixed: added \n before end of script closure to work with scripts where the last line is a line-comment without \n
load/execute scripts in sorted order to reduce risk of random side-effects and allow some rudimentary control for dependencies
Merge pull request #42 from PredatH0r/master

extraQL support, expose `HOOK_MANAGER.addMenuItem(caption, handler)`, script load order, string IDs, etc.