circularbuffer for golang