Merge pull request #295 from nskvortsov/master

Fix to handle empty kotlin compilation output
Get reference for invoke calls with lazy resolve
Cache resolve session under OUT_OF_BLOCK_MODIFICATION_TRACKER
Create descriptors cache for the whole project and store file-specific session only for created temporary files
Add ability to test jet file is in scope
Ensure different session is generated for different file and create them for library files
Force replace sources.zip before downloading
Source paths updated for IDEA libraries
Assertion message
Trying to fix a blinking test

Sometimes quick-fix tests that use Change Signature failed with weird assertions, allegedly because an alarm inside the Change Signature dialog schedules something on AWT thread that fires while the next test is running
Module groups added
JS backend: added delegate property support.
Refactoring: Remove WholeProjectAnalyzerFacade (methods were inlined)
Refactoring: extract anonymous CachedValueProvider provider
Refactoring: Introduce EMPTY AnalyzeExhaust constant
Fix "Descriptor of property not available in binding context" assert for declarations in bodies
Remove assert about error type for removing type annotation
Use version of test with initializing post startup activities to initialize builtins
KT-3715 make Collection.notEmpty a property

Renamed "notEmpty()" methods to "isNotEmpty()" in following classes:
    - Collection
    - String
    - Array

Added "notEmpty" property to Collection class
Introduce method for getting element with context for better error reports