Added hook movement types. (Before Refactor of HookEntity)
Refactored Hooking code to support new hook inheritance.