fix uninitialized message

Valgrind reports that this message is not initialized before being
written to uds. Actually only message type is being used, but for
safety, we clear the memory first.
fix uninitialized messages

Valgrind reports uninitialized message unions. copy_message() accepts
NULL pointer as its source, but in that case it used to simply do
nothing.

In order to initialize message properly, we clear the dest
message if NULL is passed in as source.
fix uninitialized variables

Uninitialized color structs may leave alpha field as something larger
than zero. In a typical testing environment, it was left as 100, making
the icon on the title bar of window a transparent hole.