Python: Define Workflow and Executor APIs (#272)
* Workflow init commit
* Add samples and clean up
* ExecutionContext -> WorkflowContext
* Address comments 1
* Fix mypy
* flatting folder structure, and rename contexts
* Remove add_loop
* Add map reduce sample, remove Activation conditions
* Add AgentExecutor and allow multiple handlers per executor
* Minor improvement
* Add RequestInfoExecutor
* Add unit tests part 1
* Address comments 2
* Pre-commit update
* Add run method and more unit tests
* Add xml docs
* run_stream -> run_streaming
* message_handler -> handler
---------
Co-authored-by: Chris <66376200+crickman@users.noreply.github.com>
Co-authored-by: Evan Mattson <evan.mattson@microsoft.com>