Comm

#429 Makes new Comm Module. Overhauled and Commented. Hopefully simpler. Currently just broadcasts, but has multicasting functionality (for some reason multicast not working in kernel). Some random clean up things too.