updates Game.getBackupDetails to use new jsonchess API
adds move.generateLabels() to Game.move

if not done here, the encoder in jsonchess would have to make sure
it was done, which would mean checking whether the method exists
(plain-object moves need to be encoded as well)
updates History widget to use new interfaces