Add checksum tests; separate checksum related code; extract utils

Following tests for checksum computations are added:
* execution time measurement for different implementations
* computation correctness.
Code for checksums is now separated and some utility functions are
also extracted. Checksum calculation speed tests are kept in a separate
module too and can be run by make speed_test.
(Motivated by FlowForwarding/LINC-Switch#276).
Use optimized checksum calculation for UDP

UDP encapsulation uses now more efficient version of calculating
checksum.
(Motivated by FlowForwarding/LINC-Switch#276).
Extract UDP related code to separate module

Functions that operate on UDP headers are now extracted to separate
module pkt_udp.
(Motivated by FlowForwarding/LINC-Switch#276).