cByteBuffer uses void * instead of char * in data interface.

This makes it compatible with any pointer type.
Replaced MSVC-specific decorators with our universal ones.