[MPS] Better error message for `slow_conv2d_forward` (#86844)
Error `Could not run 'aten::_slow_conv2d_forward' with arguments from the 'MPS' backend.` is very misleading as usually this method is only invoked if input is on CPU but weights are on MPS device.
Raise a more user friendly error in this case
Add test to `test_invalid_conv2d` to check for those conditions.
Fixes https://github.com/pytorch/pytorch/issues/77931
This is a cherry-pick of https://github.com/pytorch/pytorch/pull/86303 into release/1.13 branch
Approved by: https://github.com/kulinseth
(cherry picked from commit fa799132d82c3c48253aaf7d3ee3a8c5e007350d)