Add reveal.js slide formatting support

A quick attempt at adding support for various reveal.js formatting options to nbconvert's slideshow output.
* Formatting slide/sub-slide background and transitions
* Formatting highlighting of slideshow fragments
* Customising global slide options, e.g. auto-progress, showing/hiding controls etc...

A significant chunk of options documented on https://github.com/hakimel/reveal.js have been imple
mented.

Options are set in cell/notebook metadata, under a subsection "slideshow" e.g.

    {
      "cell_type": "heading",
      "level": 2,
      "metadata": {
        "slideshow": {
          "slide_background": "http://ipython.org/ipython-doc/2/_images/ipynb_icon_128x128.png",
          "slide_type": "slide"
        }
      }, "source": [ "Background Images"]
    }

Currently testing reveal.js formatting with https://gist.github.com/genericg/7ed51454b72f3199a851 

Current issues:
* fragment highlight css formatting can conflict with background settings/possibly being overriden by html formatter
* not all global slide options tested
* No unit tests, as not sure how to incorporate reveal.js output in to unit tests
* probably lots more...