more refactoring.  got sufficient test coverage round authenticator.
refactored to core package.
stubbed out required tests.
starting to sub/work out how to structure the api.