Adds support for receiving multicast packets on Windows and Mac

Adds support for multicast for Windows and Mac/Posix.

With multicast, clients choose to subscribe to packets by subscribing to a multicast group. The benefit over sending by broadcast, i.e. setting the packets to be received by everyone on the network listening to a specific port, is that it enables routers to use network bandwidth more economically, mostly useful when streaming lots of data. http://en.wikipedia.org/wiki/Multicast_address

In this implementation, listening to an IP address in the multicast range (224.0.0.0 through 239.255.255.255) automatically enables multicast on the receiving socket. For multicast sending, no extra work has to be done, you can just specify the multicast address as the destination address.

I also added a multicast receive test. You can use the existing OscSendTests with the new OscReceiveMulticastTest by specifying address 239.0.0.1 as 'destination' address.