wip 9979 (proxy read support)

Add proxy read support

Signed-off-by: Zhiqiang Wang <zhiqiang.wang@intel.com>
pg is a boost::intrusive_ptr. The implicit called function intrusive_ptr_add_ref and intrusive_ptr_release will do the pg->get() and pg->put(). I don't think we need to call them again.