Cmf release 3.1.1

Here's what I came up with to get streaming working on .NET. Taking your advice, I added support into our .NET version of the StreamingReaderRegistration and IStreamingReaderHandler to use IObservable and IObserver from the .NET framework itself. 

After some trial and error I was able to confirm that I can both send and receive between Java and .NET publishers and subscribers. I've added example projects in amp.examples for both to test things out. Currently, their spring configurations assume you have rabbit configured to run locally.  To get .NET to work, I also had to add an overloaded constructor to the OutboundHeadersProcessor allowing me to set the sender identity if I'm not working in an active directory environment where an LDAP looking is not possible.