Provide a path for default xml to load upon creation.

I had to get a bit more clever here and abstract away getting the xml content's data via a function and make sure it was consistently used.
@Kelketek Yup, I prefer this approach compared to the way @aboudreault included the XML directly in the XML: https://github.com/edx-solutions/xblock-adventure/blob/master/adventure/adventure.py#L51

However, a cleaner way would be to use @mtyaka upcoming change to allow default callables - see https://trello.com/c/NbZbs7D8 (in the meantime, you can use the functionality with an additional FIELDS_TO_INIT attribute - see https://github.com/edx-solutions/XBlock/commit/f0112919e625ef037d1f0759ceb6ef7353cf367d and https://groups.google.com/forum/#!msg/edx-code/Bm48QHbK_qY/E2rg9VMF4-0J ).

Then, to add to the complexity of this case, there is also the fact that this breaks the tests @dragonfi has been preparing: https://trello.com/c/qG34lVBg

Can you discuss the three of you ( @Kelketek @aboudreault @dragonfi ) to find a solution the would work well on both adventure and mentoring, and would allow the tests to run correctly?