UDPInput: Only look at as many bytes of the packet as we actually received

Without this, the String constructor just scans until it finds a NULL byte, meaning it will scan until the end of the longest packet we've ever received, adding gibberish onto the end of our message.