Get rid of dependency of class descriptors on BindingTrace
Move utilities out of OverrideResolver
Remove unused dependency of 'serialization' module on 'junit' library
Create DescriptorFactory utility class

Will contain utilities needed to create different common descriptors, such as
default getters/setters, enum values/valueOf methods, etc.
Refactor OverridingUtil.resolveUnknownVisibilities

Get rid of dependency on BindingTrace, move the corresponding error reporting
logic to OverrideResolver
Refactor DescriptorUtils

Remove dependency on org.jetbrains.jet.lang.psi, move utilities closer to their
usages, add NotNull annotations, fix formatting, etc.
Remove PSI usages from ScriptDescriptor
Simplify JvmPrimitiveType, PrimitiveType

Delete utility methods from interfaces, move once-used methods to where they're
used
Move KotlinToJavaTypesMap, AsmTypeConstants to frontend.java

They're used only in compiler
Cleanup descriptors in frontend

Remove useless classes/interfaces, inline useless superclasses, make the code
greener
Move FunctionDescriptorUtil out of descriptors/
Extract LazyResolveStorageManager interface

StorageManager will be available at runtime, thus it can't depend on
BindingTrace
Remove unused 'trace' parameter in ModuleConfiguration
Minor, remove DataFlowValueFactory.INSTANCE

DataFlowValueFactory's methods are all static
Delete ReceiverValueVisitor

This is done because this visitor ties all ReceiverValue's together, which
makes descriptors depend on PSI (ReceiverValue -> ReceiverValueVisitor ->
ExpressionReceiver -> JetExpression). Descriptors will be available at runtime,
but PSI is very heavy, so this dependency should be gotten rid of
Make ReceiverValue.NO_RECEIVER = null

The artificial object is no longer needed, now that ReceiverValueVisitor is no
longer present. Use nullable ReceiverValue everywhere NO_RECEIVER could have
appeared, replace ".exists()" calls with checking against null
Move Renderer to org.jetbrains.jet.renderer
Move ROOT_NAMESPACE_NAME to DescriptorUtils

KotlinBuiltIns depends on it, but it cannot depend on JetPsiUtil, because
descriptors module should not depend on PSI
Minor, delete useless class
Add JetType.isError()

Instead of ErrorUtils.isErrorType() which does several instanceof checks anyway