Use local ProgramInfo in CommandLineModuleManager

Remove all usage of the global ProgramInfo object from
CommandLineModuleManager and the classes it uses.  Instead, use the
local instance.  This allows further refactoring.

Change-Id: I52d930ae4bd6bca8a9b4d12c2d0d66470e56a645