use net/http/persistent for keepalives

- converts the cookbook synchronizer to use keepalives
- converts remote_file to use keepalives

if code re-uses its Chef::HTTP object it will benefit from keepalives
automagically.  also hung a net/http/persistent object off of the
run_context which can be injected into new Chef::HTTP objects in order
to share the client cache across new objects.