ensure args passed to hooks are ref/non-ref as appropriate

- in hooks we pass scalars as non-ref with arrays and hashes as refs
- add lots of missing pod for hooks