The wallet only encrypts secret keys, but probably other things should be encrypted as well. So, a few points:
the create wallet page also will create the initial private database using the same secret
the wallet interface throws up the login dialog unless it is unlocked, and when it locks the password dialog returns
a database for encrypted data needs to be made - maybe just roll it all into the state.go state variable and instead of just syncing that, also encrypt it.
The wallet only encrypts secret keys, but probably other things should be encrypted as well. So, a few points: