Allow @FunctionalParameter to be applied to methods, in order to support better model loading of methods with multiple parameter lists (see ceylon/ceylon-compiler#1638)
Now that model loading of methods with multiple parameter lists results in the methods type being the eventual return type (rather than the type of the result after one invocation) we need to restore the higher-order-ness of the applied function's type. Do this by getting the full type and then getting the return type of that. (see ceylon/ceylon-compiler#1638)
test: We shouldn't care about the order of types in a union. I don't know why but this started failing for me