Allow carousel to be refreshed

This is a pull request for issue #17.
We have tried to keep the changes to a minimum so they are clear and also added some tests. 
This function is required by our CMS to allow the editors to change the contents of the carousel via Angular.