Decouple interpreter and handlers