matrix multiplication can now infer `A' given dx = Ax

where dx and x have known concrete types.
fix up vconcat

it's not actually that complicated, since column units all have a
leading DOne, so you can't actually shift units around (as in hconcat)
add pretty-printer showing that the matrix types can be inferred now
Merge remote-tracking branch 'upstream/master'