Bug fix: @active_if leads to confused pipeline_printout display because active_if state was not always being updated. Added task.def update_active_states_for_all_tasks () which will update active_if for all tasks (nodes). This is far more tasks than we need but so long as we don't do something silly like interleave pipeline_run / pipeline_printout from different pipelines where the @active_if condition is *changing*, we should be OK. But everyone reads the source code and knows that Ruffus is not reentrant, right?