general improvements
 - watch services now avoid NPE
 - user services refactored in order avoid backend rely on request scoped bean