Make uid/username required, but null for anonymous

Fixes #8