Livecoding my father's idea with him, using ES2015 and transitions whose duration is longer than the iteration loop in which the exit transition is a bit tricky with D3 3.*.
Built with blockbuilder.org
https://cdnjs.cloudflare.com/ajax/libs/d3/3.5.5/d3.min.js