Task #572 Added UDP CRC recalculation to reassembled frame

This recalculation is optional, but added for consistency.
The UDP CRC of the first fragmented packet we receive is calculated
over the inital unfragmented packet. When the packet is reassembled
the data over which the CRC is calculated is equal to the data of
the initial packet.
Task #427 Added IPv4 pseudo header struct
Task #577 Rewrite/rename of UDP CRC function pico_udp_checksum_ipv4
Task #577 Implemented UDP CRC check on received packets