1) Yes. Simply add more data to the object that's bound to each element. Perhaps "color" and "size" keys. You can also nest arrays and objects. One possible use: including a time-series for each link on a force-directed graph. Or % composition per node, for a pie chart. Or a URI to access the original data.
2) Yes, but expect to learn quite a bit about d3's layouts and SVG. There's a lot of functionality, which means multiple ways to achieve the same thing. I would try rendering those spark lines in a rectangle, then wrapping around the circle with SVG transforms or the arc layout. Or you could do scales in polar coordinates.
Also check out this Protovis example: