consistent store
Merge pull request #206 from AlCutter/consistent_store

Add a preliminary consistent store
Remove the HttpRequest::get() method.
Fake consistent store
Merge pull request #213 from AlCutter/fake_consistent_store

Fake consistent store
Use shared_ptr for running HttpRequest.

This makes the ownership model *slightly* more sensible.
Fix a now-incorrect comment.

Should have been part of 9f67d0c5.
Add GetEntryForHash() to consistant store
Merge pull request #214 from AlCutter/entry_for_hash

Add GetEntryForHash() to consistant store
Split the request-specific code from HttpConnection.

Also added a number of CHECKs and comments to clarify the logic.
Allow setting the timeout on HttpConnection.
HttpRequest::Done can receive a null request in case of timeout.
Add support for cancellation of HTTP requests.
Submit pending certs to consistent store
Merge pull request #220 from AlCutter/submit_certs

Submit pending certs to consistent store
Remove the magic value passed as a flag to event_active.
Fix a memory leak, as well as a possible race condition.
The callback shouldn't be running once HttpRequest::Cancel returns.

This covers the case where you're cancelling from the destructor of the
object that is used in the callback. You definitely want Cancel to either
let the callback complete, or never let it run, anything in between would
be Very Bad (tm).