Add TraceFilter interface.
Update ClientTracer.startNewSpan contract definition.

It is possible to return null SpanId in case we should not trace
current request. This allows introducing sampling.
Add TraceAllTraceFilter implementation.
ClientTracerImpl updated to support sampling using a TraceFilter.
Update Brave public api with TraceFilter support + improve unit test.
Updates to javadoc for public api.
Update to documentation.