Try to implement closures without trampolines
Merge branch 'master' into no_trampolines
Merge branch 'master' into no_trampolines
Merge branch 'master' into no_trampolines
Disallow casting function types to other function types
Closure context is always first argument. When invoking a function pointer check to see if context is null or not. Fixed Thread code.
Merge branch 'master' into no_trampolines
Allow implicit cast of function type to return void