Fix custom hook output and return values


1. Fixing return values in a few places.
1. Show stdout and stderr. Hooks might need to output info to user even if successful.
why use global variable if `system` returns valid value?