make recipe an event emitter, so you can listen to errors