Anonymous function invocation

Anonymous function invocations can happen after function and method
invocations, as shown in the following example:

```
let adder = |x| -> |y| -> x + y
var value = adder(1)(2)
println(value)

let obj = DynamicObject():
  define("adder", |this, x| -> |y| -> x + y)
value = obj: adder(10)(20)
println(value)
```