Check if hooks are executable before calling them

Before, we were only checking for file existence. We can't call them unless they're executable, too.