Add/move a few checks for interfaces.

- Add a check for @interface functions that take parameters (replacing the INTERFACE_CONSTRUCTOR_CANNOT_HAVE_PARAMS check in gjslint)

- Check that @interface functions have empty bodies (this was already in the new type inference, but now it's separate from typechecking, which means it can run in a per-file way, or when typechecking is disabled.)

- Check that interface methods have empty bodies (we already had this in the old type inference but now it's in the new one as well).
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=77981024
Don't call toString unnecessarily in JSType
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=77981109
Added a new option for JSCompiler web service, which allows to turn off
propertyRenaming, while keeping ADVANCED_OPTIMIZATIONS.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=77981122
[NEW TYPE INFERENCE] Unsupport forward declared types used in code

My first attempt didn't work correctly in all cases where the forward
declaration is used in code, so rollback that part. Keep in the
understanding of forward declared types referenced in JSDoc.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=77984267