Closure Optimizations

 * unused entries are removed from the closure of inline functions after optimization
 * inline functions are inlined when they are immediately applied
 * function items now use the correct argument names and annotations
 * the *Info View* only shows functions and variables that are used at runtime