attribute accessors shouldn't accept an unknown dsid
fixes #266
Merge pull request #268 from projecthydra/error_invalid_dsid

attribute accessors shouldn't accept an unknown dsid
Extracting .best_model_for from AF::Base

I have a use case in which I want the object's best model but don't
want it cast to that model. By extracting this behavior, I have access
to that behavior.
Merge pull request #270 from projecthydra/extracting-best-model-for

Extracting .best_model_for from AF::Base
Changes behavior of ActiveFedora::Base#find to treat empty arrays the same as empty strings. Possible fix for #272.
Merge pull request #273 from afred/allow-empty-array-in-af-query

Changes behavior of ActiveFedora::Base#find to treat empty arrays the sa...
Base doesn't need to extend Model
Merge pull request #276 from projecthydra/refactor_model

Base doesn't need to extend Model
Deprecate Base.pids_from_uris
Added pid_from_uri to SemanticNode::ClassMethods which pids_from_uris
will use and cleaned up semantic_node_spec.
Merge pull request #277 from projecthydra/deprecate_pids_from_uris

Deprecate Base.pids_from_uris
Encapsulate sharding related methods into a module
Rely on ActiveModel::Conversions
Extract core methods
Rely on AutosaveAssociations to provide mark_for_destruction
Encapuslate fedora attributes
Move datastream_class_for_name to the Datastreams module
Move uri methods to SemanticNode
Removed Base.class_eval
Merge pull request #278 from projecthydra/modualize

Organize the methods in Base into their own modules.
Removed dead code from SemanticNode