Improve detection of conda executable for package information
This MR attempts to improve the robustness of the detection of the conda executable used to generate package lists.
The discovery of conda is moved to be dynamic at execution time, rather than import time, and no longer falls back to the simple string conda but instead falls back to using pip if conda is not discovered by which().