Initial implementation of the adventure xblock

Initial implementation of the adventure xblock, build with Backbone + Marionette.

It currently only read the raw xml config.... but this will be modified to use lightchildren. To make this testable on the client side, we can only mock the function that fetch the data in the controller.
Minor: This seems like an unnecessary requirement to impose. Already you are using `self.current_step_name = self.steps[0].name` in one place and `self.current_step_name = "first"` in two places... might simplify things slightly if you just use the `steps[0].name` throughout and let the author call the first step whatever they want?