basic consumer and producers
added pooled producer
added pooled consumer