Added Carousel unit tests and  updated d3

The carousel unit tests test current functionality (and one new added method).

The new functionality that is desired for `selectItemAtIndex` has not been implemented yet.

And `ImageViewer` hasn't been touched either.

Next is to change the behavior of `selectItemAtIndex` which will break the test, and then fix the test to match. (or perhaps fix the test to fail and then change the behavior to make the test pass).