Optimization: avoid mapping on already-completed futures, use synchronous path where available
Add FastFuture from akka release-2.3-dev branch. Use it to optimize AsyncFunc.
- Removed all use of async/await, trying to get rid of it for both performance reasons and the stack overflow bug.
- Simplified ComposedAsyncFunc.compose, in the obvious way
- Add generic Func combinators foreach and teeMany
- Greatly simplify state machine for MultiTransform using Func.foreach
- Remove all use of async/await in StateMachine.scala
Remove FuncBase with its fastAwait, which is now unused
Remove all use of async/await and fastAsync