ERRAI-668: Add support for whitelisting

This is the initial implementation of whitelisting.

Here is a trick: if non-empty errai.ioc.whitelist is defined and it does not include org.jboss.errai.ioc.client.*, the project may not be compiled because many important types are excluded. Should we include org.jboss.errai.ioc.client.* implicitly when errai.ioc.whitelist is defined?

Another question: why ErraiApp.properties? The problem I see is that the black/whitelists are used for all modules in a JAR. I can imagine situations where this is undesired, for example, there are two *.gwt.xml files, one whitelists only some types, other wants to include all. Would it be a benefit to support for errai.ioc.blacklist/whitelist as properties in .gwt.xml files?