changed formatting and added image explanations
adding interpreter pattern