Add function application
Add optimizer and execution engine
Miscellaneous modifications

Add configuration from arguments
Optimization works
Enhance runJIT (JIT.hs)

Fix the order of lambda abstraction