Added response abstraction, first working version