Refactor description document wrapper

This is a sizable PR. Here's the breakdown..

* Changes behavior of `Openvault::Pbcore::Ingester#ingest` when the `:replace_if_exists` flag is set. Before, it would replace the Fedora object no matter what. Now it will only replace if the updated pbcore requires that that the object be reclassified as a different model.
* Refactors `Openvault::Pbcore::DescriptionDocumentWrapper` into a new class, `Openvault::Pbcore::OpenvaultAssetUpdater`. It's a little more semantic in class/method naming, and it gets cuts out some cruft.
* Gets rid of the `:ids` option for `PbcoreDescDoc` factory; use `:all_ids` instead.
* Gets rid of typo directory `spec/models/datasream`.
I don't see where `fetch_existing_openvault_asset` is being set?