Fixed so the caller context is properly copied in the call hook
Add some proper comments