Refactor and document PyConf
This is a step towards migrating PyConf over to LHCb.
I've moved a few things around to try to avoid a massive core.py
, but that didn't go too well because Algorithm
, Tool
, and DataHandle
all depend on each other so can't be easily moved to separate files. For now I've kept Algorithm
and Tool
together in a components.py
file and moved DataHandle
and CompositeNode
to a dataflow.py
file. EverythingHandler
now lives in environment.py
. smart.py
still exists but configurable
and namespace
are now exposed directly on PyConf
(as I imagine these are the things most HLT-line modules will ever import from PyConf.
Also gone through and changed a few names, and added lots of docs (including doctests where possible).
Sorry the diff is so huge. I think in general the move is in the right direction but I'm not super happy with how things ended up being organised.
I can take care of rebasing the other MRs if we merge this. Includes !193 (merged).