In reviewing the generic "builder" abstraction that allows arbitrary command execution we realized this could be used to implement already existing builders (e.g., python/pip and nodejs/npm).
Rather than implement new builders for all potential package managers/languages we should abstract this by making builder generic enough to satisfy all these cases.