We have previously used ``cogent.util.misc.app_path`` for this, but ``which`` does look better. We should probably replace all calls to ``app_path`` in QIIME with calls to ``which``, and then port ``which`` to bipy. Note the interface is very slightly different (``app_path`` returns ``False`` if ``executable_name`` isn't found, while ``which`` returns ``None``, and I think the latter makes more sense).