Exposed nextStep in the impress:stepleave event
Added data-substep=""; which will allow for a JavaScript callback to be used to perform actions upon a slide. Slide will only move forward when the substep function returns true. This allows for animations and the like to be performed on slides before moving on to the next slide
adding check for target.classList in case of undefined
added impress:starttransition
added steps to impress:init event details
added function on step feature
added exit function
split CSS into reusable bits and demo-specific bits
break out a template.html to assist with starting new projects
addad data-cls for steps
added impress:stepgoto event to api
fix
Merge remote-tracking branch 'TimHeckel/master' into master_with_patches
Merge remote-tracking branch 'bendoh/substeps' into master_with_patches
Merge remote-tracking branch 'Marvin182/master' into master_with_patches
Implemented [data-keyboard-capture], so elements inside slides that use keyboard events are not captured by impress.

USAGE:
------

```html
<div id="code-demo" class="step slide" data-x="4400" data-y="2200" data-z="800" data-rotate-x="0">
    <textarea id="code-editor" data-keyboard-capture="true"></textarea>
</div>
```

All keyboard events originating on the textarea, or childs of that element (for example if it gets converted to a CodeMirror instance) are ignored by the impress.js keyboard event handlers.
Merge remote-tracking branch 'm4n2b/data-exec' into master_with_patches
Merge remote-tracking branch 'm4n2b/starttransition' into master_with_patches
Merge remote-tracking branch 'm4n2b/stepsInInit' into master_with_patches
Merge remote-tracking branch 'sunnygleason/master' into master_with_patches