[split] scrooge: prefer Protocols.binaryFactory over TBinaryProtocol.Factory

Problem

Generated code is using Apache Thrift's `TBinaryProtocol.Factory`
instead of finagle-thrift's `Protocols.binaryFactory()`

Solution

Update templates to use `Protocols.binaryFactory()`

Result

Allows for the implementation to be further improved without
requiring changes from clients.

RB_ID=422963
[split] csl: updates changelogs to be current

RB_ID=422811
TBR=true
[split] scrooge-linter: remove invalid CONFIG.ini.

RB_ID=423349
[split] scrooge-doc: Fix formatting in the CLI help page.

RB_ID=426483
[split] scrooge-linter: Cleaner logging and options.

RB_ID=429489
[split] util: Enables cross-publishing for 2.11

Problem

Although the specs tests were removed, we weren't publishing against
2.11.  Notably, util-eval will be killed for 2.11, and it's nontrivial
to get sbt to aggregate a project for some crossScalaVersions, and
not for others.  Also, we were depending on a scalacheck feature
that was removed in newer versions of scalacheck.

Solution

Upgraded scalacheck version for 2.9.2 to one that had a replacement
method that was the same in the up to date scalacheck.  Moved
util-eval out from being aggregated, and changed its crossScalaVersion
to only "2.9.2", "2.10.4".  It turned out that the version of sbt
we were on had a bug where it didn't use incremental compilation
if you used cross building, so I upgraded us to 0.13.5 across the
board.  util-logging was ooming, so I increased the heap size.

Result

We can now publish against 2.11

RB_ID=425979
[split] bump util to 6.20.1-SNAPSHOT

RB_ID=436989
TBR=true
NO-QUEUE=true
[split] One step on the road to get pants publishing in the birdcage is to add provides() clauses to the BUILD files.  This is the result of running a script, that mines the POM files for artifacts to publish.  Maven and pants don't correspond 1:1, however, so this may result in some provides() being put on objects that won't ever publish, and some provides() missing on things that do.  This should serve as a first cut, that we might tweak in subsequent RBs.

Prior art (that wasn't committed): https://reviewboard.twitter.biz/r/415349/

RB_ID=434071
[split] scrooge-core: Added scala 2.11 support

Signed-off-by: Moses Nakamura <mnakamura@twitter.com>

RB_ID=437101
[split] csl: Fix tls-able urls to point to https

RB_ID=437687
TBR=true
[split] Birdcage: Upgrade to scala_2.10

RB_ID=443649
TBR=true
NO-QUEUE=true
[split] scrooge: add .withoutPassthrough method that recursively removes passthrough fields

RB_ID=446271
[split] bump util to 6.21.2-SNAPSHOT - and bump a bunch of other poms too

Pushing CSL libs back to SNAPSHOT so our release scripts work.  Then we will release :-)

RB_ID=448209
TBR=true
[split] scrooge: Disallow identifiers that are thrift keywords.

RB_ID=449621
[split] Add option for not building thrift from dependencies

This gives the user the option of extracting thrift files from
dependencies without building them, so they can be included in thrift
files in the current repo.

This is useful when the dependencies' thrift files were already built
with scrooge, when it would be redundant and a waste of time to rebuild
them upon extraction.

Signed-off-by: Moses Nakamura <mnakamura@twitter.com>

RB_ID=449089
[split] **/BUILD: no pants() or deps(), no duplicate deps

- Get rid of the message:
The alias 'dependencies(..)' has been deprecated in favor of 'target(..)'

- Get rid of (most?) pants() invokations, as suggested by:
*** pants() wrapper is obsolete and will be removed in a future release. See http://pantsbuild.github.io/build_files.html ***

- Remove duplicate dependencies

RB_ID=451205
[split] birdcage: TWOTEN --> SNAPSHOT

Problem

Not naming our poms TWOTEN confuses a lot of our automated built stuff such as maven-tools and the snapshot CI

Solution

Set the suffix back to SNAPSHOT, as well as bump the patchlevel version to every pom because SNAPSHOT < TWOTEN lexically in pants.

RB_ID=447205
[split] finagle: simplify Stack clients and servers. Unify around them.

We introduce StdStack{Client,Server} and apply them consistently
across clients and servers. This simplifies our current "new style"
protocol implementations and makes them more flexible. Users can now
customize, parameterize, and otherwise alter the entirety of the
finagle stack through a few, carefully selected primitives. (Namely,
Stack, Stack.Params, and StdStack*.) Client and servers are now
first-class values that may be manipulated through the use of these
primitives.

This makes consistent use of Stack for our various clients and
servers. Old uses in package exp are removed.

RB_ID=451549
[split] Fix straggling dependencies in birdcage poms

Problem

Some dependencies in birdcage maven were still pointing to old TWOTEN
versions even after the in-repo poms are now snapshot versions.  This
will very quickly lead to horribly broken artifacts for everybody in the
above groups.
Additionally, the parent poms were being republished in the snapshot CI
build.

Solution

Set dependencies to point to their correct SNAPSHOT targets.
Also fix parents to be SNAPSHOT targets so that they will not land in
the reactor for their children (this fixes `mvn -am deploy`)

RB_ID=453455
[split] scrooge: Fix travis build.

This change is bringing back Jeff's change https://github.com/twitter/scrooge/pull/110

RB_ID=455529