This push brings more improvements to the release candidate for the new pants build system as well as a major revamp of python .pex support.

 New python toolchain:
   The major components:
     PythonLauncher => PEX
     Environment => PEXBuilder
     Almost completely rewritten twitter.common.python
     First class PexInfo manifest for doing thin pexes
     PEX files now embed enough portions of pip/distribute/twitter.common.* rather than dumping out eggs
    No longer use EggParser + EggCache; instead use the "proper" pkg_resources Metadata+Distribution components

  pants:
    + Fix resolve cp construction to always occur
    + Add a comment to make it clear pants confluence pages should not be edited directly - give a pointer to the target to use instead
    + Fix markdown open to display isolated pages in addition to page graph roots
    + Remove -types from ivy resolves and instead uniformly use extension matching against jar to cull classpath mappings
    + Fix help - don't reuse the initial option parser - just seed a new one
    + Add support in test runner for failing fast and plumb this option through to pants.new's junit task
    + Fix compiler diagnostic filters to only apply to warnings - was squashing error messages as well
    + Pass return codes back up from the pants py command
    + Support jvm_args for jmake
    + Add orphan pid reaping to python tests
    + Add support regex excludes to old and new pants
    + Add configurable test timeouts to python test targets
    + Add basic command line pre-parsing support to enable free mixing of goals, targets and flags for 99.9% of cases
    + Fix AnsiColorDiagnosticListener to handle warnings and errors at eol - a common case being missing ;   + add a failing test and fix
    + Add support for : and :: syntax to select all sibling and all descendant targets, deprecate the corresponding --all and --all-recursive flags
    + Add a check that jars never get over-written
    + Add rcfile support to pants.new for defaulting flags
    + Fix dependency file flushing for cases when the compiler hits an error before ever flushing a class file
    + Support python_binary targets without sources
    + Fixup JUnitConsoleRunner to count all public methods of a concrete class' hierarchy to model junit4 native runner behavior
    + Protect pants/new java processes from CLASSPATH environment variables - scrub these and warn the user
    + Cut off BUILD file ancestor walks at the build root to prevent a large class of hard to diagnose errors
    + Add an option to force NailgunTasks to globally revert to subprocess java spawns instead of starting up a nailgun server
    + Add support for publishing snapshots to a local maven repo. + Fix latent bug when publishing targets with thrift or protobuf dependencies
    + Map jmake error codes to meaningful (for the most part!) messages
    + Use a single --specs flag to collect both explicit specs file paths and classnames
    + Add basic emma code coverage support for java_tests
    + Add a custom DiagnosticListener to the dependency tracking compiler to enable targeted supression of warnings and colorized build output
    + Add an option to log success/failure after execution
    + Fix missing provides transfer from protobuf target to synthesized java_library target
    + Add idea and eclipse goals to generate IntelliJ IDEA and Eclipse projects respectively
    + Adds filedeps and pathdeps goals to pants
    + Improve bundle mapping flexibility with support for relative_to
    + Remove duplicate pants BUILD definition

  python:
    + Have the log module respond to a NONE disk level by turning of disk logging completely and add a LogOptions method to allow apps to do this programmatically
    + Add an lru cache decorator
    + Fix wall_time handling for procfs, fixes thermos kills on linux
    + Add ignore_errors option to pex dependency resolution
    + Support initializing common log without disk logs
    + Fix error in python macosx platform compatibility logic, add tests
    + Add support for pex pkg_resources entry points
    + Safer package caching for .pex
    + Add daemonization to twitter.common.app

  jvm:
    upgrades:
      mahout-0.6-T1, finagle 2.0.1, twitter-text 1.4.10, gson 2.1

    + Add 99.9 and 99.99 as default percentiles in RequestStats
    + Just log changes in a serverset when they occur
    + Kill twitter.thrift/ThriftService
    + Introduce an interface to abstract TimeSeriesRepositoryImpl from Stats static badness
    + Unsuppress checkstyle for args, common/application and httphandlers
    + Expose Supplier<EndpointStatus> in ServerSetModule
    + Changes to the TokenStreamSerializer
      add a fingerprint of the attributes used in the serializer so that mismatches in attributes are detectable
      add a ByteRef-like interface for deserializing a snippet of a byte array
      ensure that TokenTypes are serialized to a single byte
    + Introduce a glog style formatted in common.logging
    + Narrow finagle-thrift dependencies to just what is required
    + Expose per event latency stat in SlidingStats
    + Scala command line parsing using case classes