Adding contacts to memberships
If you are in Drupal, Webform with Webform Civicrm Integration could do this. It allows you to have users create any number of contacts, along with relationships between contacts.