Made Bounded buffer a subclass of array Blocking queue, the put and get
methods had to be made unsynchronized because of some nested
synchronized call in the Blocking queue