* Redefine checkVersion as version mismatch detection instead of a compatibility check

* Update notification behavior to notify callback listeners instead of throwing an exception
* Remove the distinction between regular and "extended" semantics