Check for more return mismatches

All expressions but calls and primops are now checked for return mismatches.
Handle return mismatches for calls and primops

Only exit BIFs and the match_fail primop are allowed to run where more than one
value is expected.
Remove obsolete comment in core_lint