deep copy of stagedAnswer array when marking MCQ parts

Can't believe this hasn't caused problems before.
When marking an MCQ part, ticks (the saved set of box ticks) is set to util.copyarray(stagedAnswer).
But because it's a 2D array, the row arrays weren't being cloned, so changes to ticks affect stagedAnswer, and vice versa.
This manifested itself by resetting the selections in a 1_n_2 part when resuming a session.

Now use deep=true to clone the row arrays.
fix restoreAnswer on m_n_x parts

I had rows and columns the wrong way round.