Contacts edit

Add separate modal window to edit contact. Supported actions are to change the contact display name to a custom display name. If the user is online, there is the ability to sync the contacts display name.

Removal of contact is moved to this screen.
As the db is encrypted was thinking I had to decrypting and checking all contacts to find the correct key. But seems to overwrite correctly with just using `this.put`, aka it doesn't create a new contact with a different key.