Add missing tools.cli dependency
Allow injection of service definitions in tasks

Adds pallet.main/add-service, to allow service definitions to be added
by a task driver (eg. lein pallet plugin)
Fix pallet.main tests

Adds a *suppress-exit* to enable testing of that would otherwise exit.