Cleanup extraneous SLF4J and Log4j dependencies.

The design of SLF4J is that library code should remain agnostic to any
particular logging system by depending only on the SLF4J api jar, and
leaving it to the integrator/assembler to depend on a particular SLF4J
adapter.  By introducing dependencies on slf4jlog4j12, we were assuming
all consumers would want to use Log4j.

This commit cleans up the situation by removing dependencies on Log4j
itself as well as slf4jlog4j12 from all library code (i.e. production
jars).

Standalone tools and test cases still use log4j and the SLF4J log4j
adapter.
Consolidate log4j configuration for tests, remove extraneous log4j.xml files
update CHANGELOG
Adding the ability to specify defaultRouting = Master in the config for Rest.li services.

In a multi-colo environment this allows you to set service-by-service whether it
should route to the default colo (local) or to the master colo (maybe local). We're
adding this for single-master services so that client code does not need to explicitly
route Rest.li requests to the master colo in each request.

Example config for a service in config/app/d2-config-cmdline/application.src:

<entry key="premiumServices">
  <map>
    <entry key="path" value="/premiumServices" />
    <entry key="loadBalancerStrategyProperties" value="${paymentsStrategyProperties}"/>
    <entry key="defaultRouting" value="Master"/> <!-- new -->
  </map>
</entry>

RB=179212
Fix open source build.

Zookeeper was dragging in log4j 1.2.15, which has an undesirable
dependency on javax.jms and several others, which are further not
resolvable in the open source build.

Updated all references to ZooKeeper to exclude the undesirable
transitive dependencies.
Fix open source build again.

This time, use a more global exclusion to remove the undesirable dependencies.