Address r/129 review comments

This updates r/129 with the following:
  - restores ttl check for open-ended cached eggs
  - adds distribution_compatible check into resolver()

This is parented off r/129, so see that for the full context.

Testing Done:
[== CI SUCCESS ==]

Reviewed at https://rbcommons.com/s/twitter/r/146/

Forked off the following:

commit dfb7e8c09fc11252005955927b2072f01408de9c
Author: Travis Crawford <traviscrawford@gmail.com>
Date:   Tue Mar 25 11:42:12 2014 -0700

    Update twitter.common.python.resolver to handle multiple requirements

    Multiple requirements on the same project currently cause issues because the
    distribution to use it chosen without taking all requirements into account.
    This change resolves the following error we see on CI:

    VersionConflict: (setuptools 3.3
    (/home/travis/build/twitter/commons/.pants.d/python/eggs/setuptools-3.3-py2.6.egg),
    PythonRequirement(setuptools==2.2))

    Testing Done: Trying http://docs.travis-ci.com/user/pull-requests/ to see if
    that builds based on my pull request.  Will post a link/log here if the
    build starts.

    Reviewed at https://rbcommons.com/s/twitter/r/129/