Add PhutilDeferredLog, for logging things later
Summary:
This is a step toward creating a unified access log, which is a Facebook request.
I structured it as an object that logs on destruction because it makes it easier to ensure we log everything while making the logs maximally useful (some information that's useful to put in the logs isn't available until later in the request, e.g. Conduit user).
Test Plan: Ran unit tests.
Reviewers: jungejason, vrana, btrahan
Reviewed By: vrana
CC: aran, ps, Girish
Differential Revision: https://secure.phabricator.com/D2296