V2 bugfixes

This PR fixes following bugs:
* `this is undefined` https://app.getsentry.com/gostellarorg/stellar-client/group/41605412/
* `Cannot set property 'name' of undefined` https://app.getsentry.com/gostellarorg/stellar-client/group/41605268/
* `$digest already in progress` https://app.getsentry.com/gostellarorg/stellar-client/group/41593454/
* Don't allow to enable recovery code before reset in migrated wallets.
Okay, cool.  My concern here:  why should this controller need to know that the lock version has changed and it should call saveLocal?  

It should not be the responsibility of any component that interacts with the wallet to manage that, but rather the wallet itself should manage the process, or the session should manage it.