Fix the build system to work on Linux/Debian/zsh

- Add a command to check if a program is available in the PATH and exits with an
  hopefully helpful message otherwise. Supports multiple names (node/nodejs
  issue) ;
- Use the real "echo" binary instead of the builtin, that seem to interpret \n
  as actual '\n's and prints the newline, whereas we just want to put a \n in
  the js string ;
- New file: utils.sh, where we should put stuff we want in each script.