you might be able to do this with the comprofiler component and login module from
http://www.mambojoe.com It has a moderation feature that optionally requires the admin to approve each user before they are allowed on the site. It also gives you great control over the registration process and what information is collected/required from new users.
For example you could somehow auto generate a affiliate type referral link for each current member that would link in to the user registration page with a required referral text field. You could pass the referring users username, userid or whatever you use as the unique identifier to that text field or ask the new user to enter one. You could write a validation script that required the contents of the referrer field to exist in the unique identifying (username or userid) field in the comprofiler table.
There is also currently a Buddylist feature that is being developed by Ford. The new user could then be automatically added to the buddylist of the user that referred them.