Many-to-many contact relationship

Many-to-many contact relationship

I am trying to create a Relationships module that relates contacts to each other. I need to be able to track Contact1 is a friend of Contact2 and have this appear in a related list for both contacts.

I created a new module called Relationships with 4 fields: 1. Relationship ID, 2. Relationship Type (picklist for friend, family, coworker, etc.); 3. Contact Information (Contact lookup); and 4. Related Contact (Contact lookup).

This works, except it's not really bi-directional. There are 2 different related lists, 1 for each of the lookup fields. How do I consolidate it so that there is only 1 related list?