Don't unmerge spanned cells when spanned cell is removed

Previously we inserted regular cells in place of every placeholder in
the matrix, which meant that deleting a row which happened to contain
a rowspanned cell would split the rest of the cell apart, and the
contents would be lost. (Same for columns.)

Now we only replace one of the placeholders with a new spanned cell,
appropriately smaller. The new cell inherits all of the properties
and content of the removed cell, with the span adjusted.

Bonus: When unmerging a header cell, all newly split cells also get
header style. Previously first row would get header style and the rest
would get data style, which was an accidental effect of how
ve.dm.TableMatrix#findClosestCell works.

Bug: 73213
Change-Id: I62e56657c18bc67be859ece882770ce008bc3838