piped exec: fixed memcpy size mistake
get_program_path(): returns executable path of the given program
made get_program_path() safer
program_available(): returns true if the given program is installed