Decouple weighted load balancer from DefaultLoadBalancer

Generalize on selection strategy in DefaultLoadBalancer so it doesn't depend on weighted load balancer.  Move log4j dependencies to testCompile.  Clean up implementation of DefaultLoadBalancer to minimize array copies.