Confusion about django app's name
When you deploy and app as a standalone package, it is just another Python package, which happens to implement Django views, templates, template tags, etc. Therefore, Django's search path is the Python search path itself. This is why people say "Just make sure the package structure is correct and django can run without problems."
Obviously, if the package name conflicts with someone else's package, you are going to get problems...
I learned Django following django book and the document. In the django book exmaple, the project is called mysite and there's an app called book inside this project. So in this case, the app is called "book". I've no problem with it.
My confusion arises in front of reusable apps. Reusable apps usually reside outside the project. For example, django-registration only has an independent folder "registration". So what's its app name? "Registration", right?
If that's the case, isn't there some inconsistency regarding the app naming? In the first case, app name seems to be a folder name (or sub package name) under the project while in the 2nd case, the app name is the top package name.
I know most of you will say "Why are you obssessed with app name? Just make sure the package structure is correct and django can run without problems." Yes, in most case, app name is nothing but a name. Except in one occasion: specify AUTH_PROFILE_MODULE. As the document explains,

To indicate that this model is the
  user profile model for a given site,
  fill in the setting
  AUTH_PROFILE_MODULE with a string
  consisting of the following items,
  separated by a dot:

The name of the application (case
  sensitive) in which the user profile
  model is defined (in other words, the
  name which was passed to manage.py
  startapp to create the application). 
The name of the model (not case
  sensitive) class.


If I have a model as a user profile in a resuable package, I have to know the app name to correctly specify AUTH_PROFILE_MODULE.
Does django use certain path searching order to decide the app name?