Error message fixed
Support modules in multi-file tests
Multi-module diagnostic tests supported

 Test added for internal visibility
Private inside a package should be visible only inside this package in the same module
Fix for EA-53605 - UOE: PackageType.throwException
Utility method used instead of manual creation of an injector
Minor. Duplication eliminated
Better handling of PackageTypes in KotlinBuiltIns
Fix .gitignore

Specific paths needs to be excluded only from the root directory. Otherwise you
couldn't for example create a directory named 'dependencies' somewhere in tests
Regenerate tests
Don't log stack trace for warning

These stack traces are confusing and create a feeling that an exception was
thrown
Extract DescriptorUtils.getContainingModule()
Pass module to GenerationState

- get rid of a hack there which was used to obtain any module, to be used in
  ReflectionTypes
- delete unused getError() in LightClassConstructionContext which was always
  null
- fix some minor warnings
Use module instead of KotlinBuiltIns in ReflectionTypes
Introduce module 'reflection', move KFunctionN to it

Metadata for KFunction classes is now longer serialized along with built-in
classes. This effectively means that it's no longer possible to find KFunction
classes via dependency on built-ins. There should be a kotlin-runtime library
in the specified classpath for reflection types to be resolvable.

A lot of tests were moved and changed, because tests on callable references
require stdlib in classpath from now on
Don't compile Java sources of built-ins

Module 'builtins' no longer has (and is not supposed to have) Java sources
Move KFunctionN classes to package "kotlin.reflect"
Add default import "kotlin.reflect"
Create error type if reflection class isn't found

Introduce a new diagnostic fired when reflection types aren't found in the
classpath
Introduce FunctionImpl and ExtensionFunctionImpl classes

Old FunctionImpl0,1,2,... will be dropped since they had no purpose