More robust check whether yacc should be build or not

This pull request does two things:

    - if there is a usuable binary (such as shipped within the git repo)
      it will be used. If for whatever reason that binary is not
      executable it will compile yacc from source
    - If the software is build within travis it will delete the binary
      and always use yacc from source