Authentication rewriting

- Remove result factory
- Change property injections to constructor options
- Some fixes