support for Custom User Models made more generic. Also, using 'ancestors' rather then 'descendants' for permissions. Sound like a more reasonable default. Could be made customizable (eg. in settings, or more fine grained in the model itself).