General cleanup to the functional algorithms:
- Replaced "stateless" with "functional", which reflects intent better: we don't mind state, as long as it is immutable
- Put the relevant work in the Gaudi::Functional namespace
- Used a more consistent naming convention
- Removed "Algorithm" suffix
- Clarified that "Filter" is not a filter in the functional programming sense, but a predicate for the Gaudi integrated filtering
- Extracted duplicated code into a FunctionalUtilities header
Updates to other LHCb projects which fix code broken by this interface change are incoming:
- LHCb: LHCb!126 (merged)
- Rec: Rec!113 (merged)