finagle-core: remove Context.letEnv; add shadowing Context.let

Problem

Context.letEnv had the wrong semantics: the previous environment
should not be discarded (except intentionally through Context.letEnv).
This caused a bug where Client Ids were no longer propagated from
legacy clients.

Solution

Introduce Context.let, with proper shadowing semantics.

RB_ID=543820
finagle-core: use fine-grained statuses; get rid of LeasedFactory, LeasedBridge

This change makes use of fine-grained statuses to the point where they
are useful.

RB_ID=536835
[finagle-core] Support residuals on /$/inet names

Problem: Residual names are not supported by /$/inet names.

Solution: Preserve /$/inet name residuals; and don't include them in Name.Bound ids.

RB_ID=544820
finagle-core: make Stack.Params easily accessible from Java

Problem:

Some Stack.Params are in package objects, which are hard to access from
Java.

Solution:

Move them into ordinary packages and add Java compilation test to ensure
that they are accessible.

RB_ID=545952
Added Sabre Labs to Finagle Adopters list

Signed-off-by: Travis Brown <tbrown@twitter.com>

RB_ID=544326
Add JusBrasil to adopters list

RB_ID=544330
finagle-core: revert 27263fdc

The package move is causing a CI problem.

RB_ID=546970
TBR=true
NO-QUEUE=true
finagle-core: Minor fixes to Netty3Transporter.newPipeline

Problem

`InetSocketAddress.getAddress` can return null but this case
was not accounted for in Netty3Transporter. This would lead
to a NullPointerException at runtime if the transporter had
an HttpProxy or SocksProxy configured.

Solution

That case is now accounted for and will no longer NPE.

RB_ID=546310
Fixed missing dependencies in finagle-mux
Problem

com.twitter.finagle.mux.lease.exp.RequestSnooper depends on classes from 3rdparty/jvm/com/twitter/common:quantity and 3rdparty/jvm/com/twitter/common:util-system-mocks directly. but these dependencies weren't directly defined

Solution

Add missing direct dependencies

Result

Cleaner dependencies list for finagle/finagle-mux/src/main/scala

RB_ID=547394
[birdcage] bump netty to 3.10.0.Final

This commit bumps finagle's netty dependency to 3.10.0.Final.
This version of netty removes all deprecated classes from the
3.9.x series.

RB_ID=547292
[finagle-httpx] Streaming constructors

Problem

The construction of Request and Response with Reader raises eyebrows.
Consider the current convention:

    val myReader = new Reader { ... }
    val req = new Request {
      val httpRequest = Request().httpRequest
      override val reader = myReader
      lazy val remoteSocketAddress = new InetSocketAddress(0)
    }

Solution

Expose another constructor for Request and Response that accepts
Reader as a parameter.

Result

Improvement:

    val myReader = new Reader { ... }
    val req = Request(Http11, Ok, "/", myReader)

RB_ID=542824
finagle: Fix Java style violations

RB_ID=545842