JetSimpleNameExpression's name is not null

Modify usages accordingly
Add 'inner' keyword

Support for the keyword in PSI and stubs

 #KT-1174 In Progress
Add ClassDescriptor.isInner()

Implement in resolve & lazy resolve; place a stub in resolve-java

 #KT-1174 In Progress
Inaccessible outer class member is now an error

 #KT-1174 In Progress
Labeled this & super to nested class' outer is an error

 #KT-1174 In Progress
Forbid usage of outer's generic parameter in nested class

 #KT-1174 In Progress
Check all modifiers for objects

DeclarationsChecker didn't check visibility modifiers for objects
Report ILLEGAL_MODIFIER on inappropriate 'inner' keyword usage

 #KT-1174 In Progress
Disallow nested classes within inner & local classes

 #KT-1174 In Progress
DescriptorRendererImpl now writes 'inner' for inner classes

 #KT-1174 In Progress
Remove unused method
Remove 'inner enum' hack & fix Java inner class resolve

Inner enum was placed into the class object of the outer class. Remove the
hack from frontend, frontend.java & backend. Fix tests

 #KT-1174 In Progress
Get rid of MutableClassDescriptorLite.isStatic()

isStatic() is now precisely !isInner()
Support inner/nested classes in JVM back-end

 #KT-1174 In Progress
Fix completion for nested class qualified expressions

 #KT-1174 In Progress
Codegen tests for inner/nested classes

 #KT-1174 In Progress
Do not report NO_CLASS_OBJECT when namespacesAllowed=true

Now with nested classes the expression "A.something" makes sense even when A
doesn't have a class object ("something" could be a nested class)

Also "A" expression now gets a NamespaceType with the scope of all static
nested classes of A

 #KT-1174 In Progress
Resolve qualified nested class expressions

 #KT-1174 In Progress