Updates to Versionable

This brings versionable resources up-to-date with the latest Fedora4
code.

I expect some discussion will ensue, particularly around the pending tests on `versionable` for child resources such as files. In short, the model type assertion that's made on objects is not being saved when it's made on child resources.  This has no effect on creating versions, you just don't have an indicator on the child resource that it's supposed to be versionable.  Although, I guess the presence of fcr:versions would be enough.