Introduced utility method.
Extracted PackagePartClassUtils.
Loading descriptors from incremental cache instead of package classes.
Removed member filter from injectors.
Got rid of redundant constructor.
Rebuild only if proto changed.
Fixed computing source file for package facade.

There had been a bug in case when compiling package with some class-only files, but exactly one file with callables.
Checking for changes in class proto.
Minor. Typo.
Checking for constants values in incremental compiler.
Don't report package facade classes as output of sources without top-level members.
Minor. Suppressed warnings.
Storing io files instead of psi (they are converted anyway).
Supported multiple make iterations in incremental tests.
Added tests for removing files from package.
Made incremental compilation test auto-generated.
Removing caches and rebuilding again in tests.

It helps to find cases when stuck data spoils compilation output.
Supported cases of removing source files from package fragment.
Extracted interface and moved implementation of IncrementalCache to jps-plugin, accessing cache via Java service loader.
Simplified interface of IncrementalCache (depending on JDK only).