Bringing in Dave's initial conversion to driver based auth and making some tweaks:

- Basic Functions like is_logged_in, user, etc moved to the driver since they will be common to any driver we have.
- Permissions/Role methods moved to main auth library since the drivers should only deal with logging us in and maintaining that login.