mat: add capacity to define alternative formatted styles
Created by: kortschak
Ideally this would be simple like time format definitions. So the current unicode style would be:
`[0 1]
⎡2 3⎤
⎢4 5⎥
⎣6 7⎦`
a MATLAB input style would be:
`[0 1]
[2 3; 4 5; 6 7]`
etc.
We need to sort out some heuristics for how this works and be able to document them simply. For example: cell width alignment is not calculated with there is no newline between 3 and 4, and 5 and 6.