* refactor: move deepcopy into its own package
* feat: add generic orderedmap implementation
* refactor: implement tasks with orderedmap
* feat: implement sort flag for all task outputs
* refactor: implement vars with orderedmap
* chore: docs
* fix: linting issues
* fix: non deterministic behavior in tests
`$` was a variable prefix that make it being evaluated as shell. It was
replaced with `sh:`.
`^` is a command prefix that make it run another task. It was replaced
with `task:`.
These were added long ago when we were experimenting with stuff and kept for
some time for backward compatibility reasons, but sometimes causes confusion
and I think the time to remove the code came.
Closes#644Closes#645
Ref #642
Co-authored-by: Trite <60318513+Trite8Q1@users.noreply.github.com>