Add YAML support for workspace configuration
Allow workspace configuration to be loaded in YAML format in addition to JSON.
YAML provides a more user-friendly syntax with support for anchors, references,
comments, and improved clarity.
To support YAML, the deserialization process has been revamped.
Unlike json_decode, which returns \stdClass objects by default, the Symfony
YAML parser returns the configuration as an associative array.
This update also simplifies the code where possible by leveraging
the null coalescing operator.
Ref T2164
Test Plan:
- Tested with new workspace.yml file for nasqueron-join workspace
- We can still load wolfplex-estate with complex auth to deserialize
Differential Revision: https://devcentral.nasqueron.org/D3825