[nomerge] SI-8899 Revert "SI-8627 make Stream.filterNot non-eager"

This reverts commit 9276a1205f74fdec74206209712831913e93f359.

The change is not binary compatible, See discussion on SI-8899. Making
filterImpl non-private changes its call-sites (within TraversableLike)
from INVOKESTATIC to INVOKEINTERFACE. Subclasses of TraversableLike
compiled before this change don't have a mixin for filterImpl.
SI-8907 Don't force symbol info in isModuleNotMethod

Test case by Jason.

RefChecks adds the lateMETHOD flag lazily in its info transformer.
This means that forcing the `sym.info` may change the value of
`sym.isMethod`.

0ccdb151f introduced a check to force the info in isModuleNotMethod,
but it turns out this leads to errors on stub symbols (SI-8907).

The responsibility to force info is transferred to callers, which
is the case for other operations on symbols, too.
SI-8900 Don't assert !isDelambdafyFunction, it may not be accurate

The implementations of isAnonymousClass, isAnonymousFunction,
isDelambdafyFunction and isDefaultGetter check if a specific substring
(eg "$lambda") exists in the symbol's name.

SI-8900 shows an example where a class ends up with "$lambda" in its
name even though it's not a delambdafy lambda class. In this case the
conflict seems to be introduced by a macro. It is possible that the
compiler itself never introduces such names, but in any case, the
above methods should be implemented more robustly.

This commit is band-aid, it fixes one specific known issue, but there
are many calls to the mentioned methods across the compiler which
are potentially wrong.

Thanks to Jason for the test case!
SI-8926 default visbility RUNTIME for java annotations

When parsed from source, java annotation class symbol are lacking the
`@Retention` annotation. In mixed compilation, java annotations are
therefore emitted with visibility CLASS.

This patch conservatively uses the RUNTIME visibility in case there is
no @Retention annotation.

The real solution is to fix the Java parser, logged in SI-8928.
Merge pull request #4053 from lrytz/tmp/t8907

SI-8907 Don't force symbol info in isModuleNotMethod
Merge pull request #4048 from lrytz/t8899

[nomerge] SI-8899 Revert "SI-8627 make Stream.filterNot non-eager"
Merge pull request #4067 from lrytz/t8926

SI-8926 default visbility RUNTIME for java annotations
Merge pull request #4049 from lrytz/t8900

SI-8900 Don't assert !isDelambdafyFunction, it may not be accurate
SI-8835 Fix implementation of Iterator drop to remove quadratic behavior