Wrap addon code in a table so we don't pollute the global environment.
Better Hook implementation: Only replace the functions we need, always call the original if we don't handle things to play nice with other addon hooks.
Your fix should be coming in with the latest commit, sorry for the oversight (don't know how nested comments are handled in notifications, so just in case I post it here too)
Following a more modular approach.