Introduce user multifield


In the annotation.user field we store the users in the acct:username@domain format
However when we're searching for users via stream we only use the username part
and the client has to juggle to make up the domain and the backend
cannot theoretically know the domain.

So, the user field was turned into a multi-field, to reflect both usage.
annotation.user is the same as it was and
annotation.username contains only the username part.

Now the client doesn't have to construct back the whole user format.
And without this our 'any' fields searches failed for the user field

Fix #1456
Fix #1457
Think this needs some kind of check incase the `user` field doesn't match the regexp. `re.match` will return `None` and this will explode.