replaced boost::circular_buffer by custom implementation to be able to
preallocate memory, and added another fast path to mix_buffers()