Neuron annotations: include user information in annotation list

The list returned by /annotations/list is now a list of objects which contain
the annotation name as well as the user name and ID of the user who linked
the annotation. If the constraints used are not strict enough, the query could
in principal return the same annotation multiple times, because multiple users
might have used it. Therefore, distinct() is used and the user referenced in one
result object is the one that was chosen first.