Simplify Delegate handling
Add array-of-struct test