Transaction support added, context for script runners, request data from outside, more features.

- Added script execution context for a script runner. It simply holds variables as context for scripts to use them.
- Now Script Runners have a "RequestInput" operation to grab data from outside, presumably from a human being. Winforms implementation included!
- Every script is now executed in a (new) transaction. Useful for database operations, and interaction with other transaction-aware resources.
- New Script Runner decorator that replaces placeholders in step/task parameters with values from the context.
- New Script Runner decorator that replaces placeholders in step/task parameters with values requested to the environmnet. (See "RequestInput" above)
- More samples!