User system updates

Most notably, project keys are stored directly in user data, now. what
this means is that nobody will be able to publically see what user is
associated with a project (or any of its notes for that matter). it also
means i had to update a lot of the key search functions to take user
data into account. this all seems to be working. there were some very
strange issues where user data was being cleared out, but i believe i
found (explained below)

before, when users logged out, tagit.user remained the same reference.
this, in retrospect, was a terrible idea (and might also be the cause of
issues in other apps). there are so many events and refreences tied to a
user object that not completely cleaning the slate after logging out is
really dangerous.

so i did this. tagit.js now completely resets/re-instantiates the user
object on logout. this seems to have cleared up issues with user data
disappearing (both in personas and key data). hopefully this makes the
idea of account-based storage more stable, as its a useful place to put
things!