- More f.c.UnexpectedTypeException subclasses.

- Non-published interface with which models can give a tip to explain why they don't satisfy the expected type.
- Implementation of the last for uncalled methods: Trying to use obj.someMethod without () on a place where method value is not expected will recommend calling the method. Trying to use methods like obj.getFoo or obj.isFoo without () on a place where method value is not expected will recommend using the obj.foo form.