I don't know where that error is coming from. Do you have code that's running outside of MODX or before the $modx object is instantiated?
All the extension_packages System Setting does is load the class on every page load.
You need a line in the class file to set the class_key.
class extUser extends modUser {
function __construct(xPDO & $xpdo) {
parent::__construct($xpdo);
$this->set('class_key','extUser');
}
}
If you want to create users in the Manager, you also need a plugin attached to OnUserFormSave() with this code:
$user->set('class_key', 'extUser');
$user->save();
return '';
I'm tempted to repeat my suggestion that you create the table with the extra fields, but not change the class_key, then just use a snippet to send the messages rather than a class method. I think you could also have your class method, leave the class_key alone and do something like this, since the class is loaded:
extUser::SendNotification($modx, $user);