cbuf: change cbuf_free to take cbuf_t instead of pointer

Update cbuf clients to free the allocated cbuf_t instead of buf pointer.
Now cbuf_free is symmetrical to cbufp_deref.
cstub: refactor cstub macros

Simplify the macro interface. Also save and restore input registers
around sysenter call.