I was just searching for something like this yesterday. I came across DiSo (http://code.google.com/p/diso/), which at first glance appears to be somewhat stale and a bit of a protocol soup.
Anyone know if that effort is still under way? (and if there are any lessons to be learned from it?)