PETSc build_with fixes

The use of `--with-foo-dir` in `petsc.py` does not always work to help petsc find library `foo`. This PR fixes this when building with

    petsc:
      build_with: |
        openblas, trilinos, suitesparse, scotch

Optimally, one should not need to have `openblas` in there. This should be enough:

    blas:
      use: openblas

I'm not sure how to handle that though.