Currently the addition of sparse scores to an already existing Scores object seems to be slow. I suspect that the following code in Scores is not really necessary, because we already know that for every existing position a new score is computed (no need for complex merging check!).
self._scores.add_sparse_data(self._scores.row,
self._scores.col,
new_scores,
name)