Remove the somewhat restrictive func_pipeline;
Add the better replacement function template compose.
Replace `NULL' with `_NULLPTR' in C++ code;
Change occurrences of `\c NULL' in doc comments to `null'.