split the triggerbox API so it can be run in-process
namespace logging