Support updating data.

e.g. selection.datum(data).call(kgram)
and then selection.datum(newData).call(kgram) now works