[tsl:concurrency] Add TypedIndirectAsyncValue to be able to create indirect async values that expected to be forwarded to an async value with a concrete type
[tsl:concurrency] Add TypedIndirectAsyncValue to be able to create indirect async values that expected to be forwarded to an async value with a concrete type

+ added documentation for how AsyncValueRef<T> type checks work for type hierarchies
