Minor, simplify method
Minor, fix/suppress warnings in codegen
Simplify function invocation in ExpressionCodegen

Callee is now generated only when it could be non-trivial, which is only the
case when generating function call in invokeFunction()
Delete Enum.name()/ordinal() JVM intrinsics

Bytecode is the same if they're generated as is from descriptors

+ Some minor code style improvements
Refactor ExpressionCodegen.invokeFunction() once again

Extract and reuse return type mapping between normal callable methods and
intrinsics
TODO Don't commit
Fix KotlinBuiltIns.isUnit

It didn't check type's nullability
Fix codegen for closures returning 'Unit?'

Only do a checkcast when we need to coerce Object to Unit: the code was
hopefully type-checked so that it'll only be necessary when the value is either
Unit.VALUE or null
Rename KotlinBuiltIns.isAny -> isAnyOrNullableAny

Reduce confusion, prevent bugs
Delete unused code