Refactored apply().
Refactored apply().

Before, Substance.Session has been triggered via Backbone event.
The problem with this was, that the session needs to stay in control
as due to asynchronous dependencies.
Now, Session adapts document.apply() and makes it asynchronous.

substance/document