Why isn't `std.exception.assumeUnique` generically defined as ```d auto assumeUnique(T)(T x) @trusted { return cast(immutable)x; } ``` instead of currently restricted to arrays at https://github.com/dlang/phobos/blob/master/std/exception.d#L905?