added cases for Fun expressions
removed catch-all pattern in case
added cases for App expressions