datastore: Making hierarchal keys a second class citizen by introducing SetParent.

Hierarchal keys are our secondary priority, rather than
having path as exposed to the user, modifying key to
support a parent chain.