Delete JavaBaseScope.getPsiElement()
Remove useless methods from PsiClassFinder

Their only implementations called methods on a parameter + a utility. Move the
utility to DescriptorResolverUtils
Remove useless PsiClass parameter

It was used only for a debug message and an assertion that never happened
JavaClass, JavaPackage, JavaAnnotation

Create dumb wrappers over PSI elements, will be used for loading descriptors
from JVM reflection later (instead of PSI)
Migrate JavaClassResolver from PSI to JavaClass

Several places are still left and need special handling.  The overall behavior
of the resolver should not change in this commit (except for maybe different
small operations like creating names, fq-names, ...)
Minor, change method parameter from String to JvmClassName
Get rid of PsiMemberWrapper

Continue migration, use the new Java* classes instead everywhere
Minor, green code & move type transformer to "resolver/"
Refactor JavaConstructorResolver

Extract methods, fix warnings, use JavaClass/JavaMethod instead of Psi
Introduce JavaType and subclasses

Use JavaType instead of PsiType whenever possible.

In this commit the logic of checking whether a loaded parameter is a vararg
changed: instead of checking if the corresponding PsiType is PsiEllipsisType we
now check if the containing method has the ACC_VARARG modifier