implicit conversion to mutable via alias this

Fixes:
* [Issue 12883 - implicit conversion of struct to mutable via alias this](https://issues.dlang.org/show_bug.cgi?id=12883)
* [Issue 12884 - implicit conversion wrongly prefers casting immutable away
over alias this when target type is base class](https://issues.dlang.org/show_bug.cgi?id=12884)

The line that's removed from test/fail_compilation/ice10016.d didn't show
up without alias this, and it didn't add any value specific to
alias this.