D3.js techniques for tooltips, hover effects, click handlers, and cross-filtering between visualizations