Directly ask MacPorts about available ports.

Ports were not properly detected using the packages_available cache.
after IRC discussion, we decided to directly query MacPorts (as done
previously?).

However instead of grepping the list of all ports every time, ask for
each port by name and check if it is active. (~2.5s faster than grepping
all each time.)
Merge pull request #1894 from richardkmichael/macos-port-detection

Directly ask MacPorts about available ports.