minor cleanup of DimensionMismatch error

* change field name from `name` to `msg` to align with other error types
  The majority of `DimensionMismatch` errors do not return the original
  method name so this is a bit of a misnomer
* change type of msg from `ASCIIString` -> `AbstractString` (closes #8984)
* Add convenience constructor `DimensionMismatch()` for the common case
  where no error message is provided
I think we safely can say no. (If it was intentional, it should have been in a separate commit)