don't just allow None as a silent passthrough for CLILayer
expose Provider as a part of the public API
change DEBUG output, avoid duplicates in processing