correctly create Pipe necessarily

setdefault() is not lazy so it was being created even when it was not
needed.

proxy settings if a pipe is to be created.
allow plugin to be disabled