Support for Execution monad

I was expecting that for the most par executes will just evaluate an already defined  library function instead of a custom execution flow.