First shot on custom user management (#1)

Ref: https://github.com/ideas-box/ideasbox.lan/issues/1
`serial` here isn't a kwarg, so it should always be provided. Are you testing against empty or `None`?