first pass at implementation of authentication