AArch64: switch patterns to be type-based rather than RegClass-based

It's a bit of churn in the blame log, but I think there are real benefits to
the newer system so I'm making the change in one go.