avoid unnecessary null checks when receiver of '!!' or 'as' operator is not nullable
added Kotlin as parameter for module wrapping function. this is for better obfuscation
Update Kotlin icons
Refactoring: move methods about override to OverridingUtil
Rename kotlin properties with all usages

 #KT-4317 Fixed
 #KT-4316 Fixed
KT-4574 New Intention: Split If - converts if statement containing one or more conjunction operators into two nested if statements
Merge pull request #427 from alextkachman/master

Avoid unnecessary null checks in'!!' and 'as'
Merge pull request #428 from alextkachman/kotlin-as-var

added Kotlin as parameter for module wrapping function
Minor in JS backend:

  - use constants from Namer in JsAstUtils#createPackage;
  - dropped extra JsInvoke node when create IIF;
  - create new JsName for Kotlin object in IIF scope.
Simplify codegen for trait methods with implementations

- use existing framework (FunctionCodegen.generateMethod) which will take care
  of all subtleties of method generation (bridges, annotations, thrown
  exceptions, etc)
- call to "generateThisOrOuter" was not needed, since when we're generating
  delegation to TImpl, "this" is always "ALOAD 0"
Minor, move and rename getExceptions

Should only be used in FunctionCodegen from now on, because every method
generation should go through FunctionCodegen
Refactor bridges algorithm in codegen

- fix a typo (which apparently didn't matter)
- queue now always contains originals, no need to invoke getOriginal()
- no need to add current descriptor's original anymore, this was a hack working
  around a problem with trait-impl which was fixed by another change
- a small optimization: don't do anything for constructors
Generate bridges for fake overrides when needed

 #KT-3985 Fixed
 #KT-4145 Fixed
Refactor OverrideResolver and OverridingUtil

Fix warnings, simplify code
Regenerate test
Move some utilities from OverridingUtil to OverrideResolver

OverridingUtil will be present at runtime and we should strive to minimize the
size of our runtime classes
Minor, provide a nicer API in OverrideResolver for plugin
Don't allow fake override to inherit implementation with wrong signature

 #KT-4763 Fixed
Don't call descriptorToDeclaration() for fake overrides

 #KT-4785 Fixed