initial checkin

ringbuffer and unittest