added ideal client interface for rpcs to root