Fedora nodes refactor

https://www.pivotaltracker.com/story/show/79487204
We have to be really careful about `logout()` because of the laziness of `RdfStream`. In exactly those cases for which we are confident that all of the serializable data has, in fact, been pulled out of JCR and into some form (presumably in heap), then yes, we can use some kind of `@PreDestroy` or the like. In fact, when we see `finally{}` being used to kill `Session`s, then we're probably good. But we do want to have strong tests for this kind of stuff. The reason I ended up writing callback machinery for `RdfStream` responses is because `Session`s were getting logged out before everything had been written out of them into the response.