Change some property name to make it more readable.
Change the structure.
Add attribute to not show the wechat serialize data in IntelliSense.
Remove the preprocessor
Add the serialize object for the call back messages.
Add unit test for all the call back message.