Implemented more complete version management by expanding VersionRetrievalScheme interface to also allow setting the version. As a consequence the interface was renamed to DatabaseVersionManager. The default implementation updated to implement this method and the DatabaseUpdater was updated to invoke setCurrentVersion after each alter set is successfully applied. This means that alters no longer need to include updates to the database version.