all the basics are there (although at least one of them isn't working, got to do some testing against sauer auth functions)