pull request for default value set in-properly in wmessage

Hi 云风,
很感谢你提供了一个这样好的library，我觉得这个是我见过最好的一个pb-c-client, 不过我在使用中发现了一个问题，
当我们为wmessage set一些值的时候，目前的逻辑是，如果key==optional && value==default_value, 程序会直接return, 我能理解这个优化，但是在这种直接return的情况下，官方pb library将buffer反序列化后，调用has<field-name>的时候，会返回false，从而会影响程序的正确性。
我目前在实现一个Hadoop-YARN的PB-C client中就遇到了这样的问题，
--
非常感谢
Wangda