Updated test data for tests according to change in JPS.

These tests were not deterministic. Now they are. When package facade's sources change (files added to package, etc), all package gets recompiled now. Behavior is tolerable, but not very desirable.
Rename Maven library kotlin-runtime -> kotlin-builtins

Also replace accidental usages of former kotlin-runtime with kotlin-stdlib
Split loadKotlin test data into two chunks

The majority of the tests stays in "compiledKotlin", while tests that use
annotations not retained at runtime go under "compiledKotlinCompilerOnly",
which will not be used as a root for generated descriptor loading tests at
runtime with reflection (as opposed to "compiledKotlin")
Test generator: allow to exclude certain test data directories
Initial support of descriptor loading at runtime
Initial support of annotation loading at runtime

In order to locate an annotated entity, we need to implement almost the whole
Java element model (which will be used anyway for Java descriptor loading)

Nested annotations are not supported at the moment. Also the order of loaded
annotations seems to be instable
Support Java symbols in runtime descriptor loading
Delete dependency of 'serialization' on trove4j

Use HashMap of wrapped objects instead of THashMap with custom hashing strategy
Prettify code in 'reflection.jvm'

Use stdlib instead of hand-written hacks, fix some warnings and unneeded !!
Include core and reflection in kotlin-runtime.jar
Add kotlin-runtime Maven artifact

Contains kotlin-stdlib and reflection implementation for JVM
Use abstract factory for reflection objects on JVM

Introduce an abstract factory class ReflectionFactory which is responsible for creating
reflection objects (KClass, KProperty, ...). The meaningful implementation is
located in "reflection.jvm" where KClassImpl/KPropertyImpl/... are accessible
and can be instantiated. The default implementation will be used in the lite
runtime with no reflection and will return nulls / throw exceptions there.

Put all functions, calls to which are generated by JVM back-end, in one place:
the class named Reflection which contains only static methods. Previously these
functions were scattered across different files in module "reflection.jvm".

The code using reflection may now be compiled against either runtime, but
reflection features will work if and only if reflection is accessible at
runtime
Drop unneeded factory methods

Either ReflectionFactory or direct creation is now used instead
Drop "+StdLib" from manifest entries
Compile kotlin-runtime-minimal.jar, include into bootstrap compiler

Include minimal runtime into bootstrap compiler (step 1 of 2 in the build)
instead of the full runtime because full runtime intersects with compiler on
classes from core/ (descriptors, JDR, ...) and these classes are in fact of
different versions. This effectively means that reflection can't be used from
the compiler, otherwise bootstrap compiler will not link (in fact it will only
fail at runtime when/if the reflection usage is reached).
1