issue #20524: isolated CLI frontend
issue #20524: use path join
issue #20524: first pass at loading scripts
issue #20524: use term scripts. also use mapSeries
issue #20524: doc
issue #20524: use async on extensions
issue #20524: better specs for async
issue #20524: async all the way down
issue #20524: cleanup