added LocalSender/Receiver to support local channels in SelectSend/Recv
now Select uses reflect.Select, so it always block now
added SelectRecv/SelectSend tests
added SendAll to Channel and changed the layout of the channel struct a little.