This needs further debate.
The most obvious use case for ~Any is for dealing with arbitrarily typed error values. Add it to std, use it for task failure.
Consider changing the Err variant of Result to take ~Any. This would allow monad-style error chaining to work much better since all Results have the same error type.
cc #61, #2408