support custom callback for username setup
set some more internal vars on the authPlugin
reference internal user
split the class out into a separate file