Fixes a ton of issues; better hooking method.