Is it possible to create a fieldtype that creates a many to many relationship between two entry sections? So, for example:

Say I have two sections:

- Recipes
- Ingredients


Recipes can have many ingredients. Ingredients can have many recipes.

If I'm editing a Recipe, I can edit the ingredients. This updates the relationship so that when I edit ingredients it can show the associated recipes (and they are editable from the ingredients as well).

Is this possible with Craft?

Thanks!

====== EDIT ======

Just to make this more clear. What I'm trying to do is create a Many to Many relationship between two Sections of Entries so there is an association between the two that works both ways.

Another example of this would be if you have a User with many Roles. I can manage which Users belong to which Roles from the Roles section, and/or I could manage which Roles a User belongs to from the Users section.
There's still a few kinks to work out, but I developed a plugin that solves this problem using Craft's native Many to Many relationship that already exists.

Basically, I've created a field type that links the relationship from the other side of things and allows you to add entries to it.

You can find it here:
https://github.com/page-8/craft-manytomany

Thanks @Brandon Kelly for the help and guidance.