Refactored RingBuffer & corrected behavior in error cases
Added size method in RingBuffer which returns the number of elements in the buffer
Fixed size() method in RingBuffer.
Fixed pop_front() method in RingBuffer.
Added user interface