Formula installer req satisfied

Fixes #31471 and #30901.

Problem with pyqt5 was because we already had scheduled ```#<Dependency: "python3" [:recommended]>``` and ```sip``` was providing us with ```#<Python3Dependency: "python3" [:optional]>```.

I don't know if this is a correct fix for this, but it works in both cases.
Sorry:
`elsif req.satisfied? && !(pour_bottle? || build_bottle?)` (missed the `!`)

Might want to refactor out the `pour_bottle? || build_bottle?` into another method to make it clearer too.