vesper_cmcp: Allowed message IDs to have value (uint16_t) -1.
vesper_cmcp: Fixed header include guard name in cmcp_name.
vesper_util: Modified functions to get timespec instead of timeval.
vesper_cmcp: Added struct for thread-safe state and waiting for state changes.
Determined error handling and parameter checking; implemented them in the code.