Links: https://stackoverflow.com/questions/45107825/how-to-use-d3fc-label-label-js-on-a-map https://stackoverflow.com/questions/17425268/d3js-automatic-labels-placement-to-avoid-overlaps-force-repulsion
https://bl.ocks.org/ColinEberhardt/389c76c6a544af9f0cab https://bost.ocks.org/mike/map/ (v3 version)
/pnavarrc/5913636 - label placement using the force layout and multiple foci but v3 https://bl.ocks.org/mbostock/1667139 - force layout in d3v4
/larskotthoff/11406992 - implements automatic label placement using collision detection
Other: https://github.com/migurski/Dymo https://github.com/ShareMap/ShareMap-dymo-js
/ilyabo/2585241 http://jsfiddle.net/s3logic/j789j3xt/
https://d3js.org/d3.v4.min.js
https://d3js.org/topojson.v2.min.js
https://unpkg.com/topojson-client@3
https://npmcdn.com/d3fc-label-layout@4.0.0/build/d3fc-label-layout.js
https://npmcdn.com/d3fc-data-join@2.0.0/build/d3fc-data-join.js
https://npmcdn.com/d3fc-rebind@4.0.1/build/d3fc-rebind.js
https://d3js.org/queue.v1.min.js