Encode compound name as a string in Class.createFor.

Encodes the compound name of a class (i.e. a list of simple class
names that represent the outer to inner class chain) as a '/' separated
string instead of as an array at runtime so that it does not interfere
with closure string obfuscation.

Change-Id: I7e10ff074a9cf259b4bb6dda5d6a5c957bfb7db3
Clean up scope for property providers.

Make sure that property providers can only see variables
that we've explicitly exported to them.

Introduce __gwt_isKnownPropertyValue for property providers.

Change-Id: I044d2763c16e24960d079dbd40d46fffc485ecf9