add macros for calling and casting
modify macros in _list.h
removed casting in zc
do some rename
add data construction macros
update comments