Tools: Parse action module using tool_source instead of XML directly.
Rebase into code stuff.
Tools: Move uihints into legacy parsing block - another feature that requires tool XML.
Tools: Refactor test parsing to be optional for non-XML tool sources.
Rebase into uihints.
Tools: Refactor configfiles to be optional for non-XML based tool sources.
Tools: Move parsing of requirements and containers into tool_source...

Implement for YAML tool source.
Tools: Refactor trackster configuration parsing to be optional for non-XML tool sources.
Tools: Refactor citation handling to be optional for non-XML based tool sources.
Small PEP-8 fix for Tool.parse_inputs.
Outine some data structures for capturing input sources.

Makes a bunch of advanced parameters in Tool.parse_input explicitly contigent on being an XML tool source.