Removed EINVAL / errno.h. Check for zero capacity in rbtail. Properly cast buffer to uint8_t.
Removed EINVAL / errno.h. Check for zero capacity in rbtail. Properly cast buffer to uint8_t.

Some platforms / compilers do not really have errno.h.

M % 0 raises a machine exception.

Some compilers do not like dereferencing void * as uint8_t *, better to explicitly cast.

cfriedt/ringbuffer,cfriedt/ringbuffer