BUG-432: Start fixing the Registration contract

Registration should be a generic construct, not tied to a particular
object. Unfortunately that requires API-level breakage which needs to be
orchestrated with the users.

As a first step introduce ObjectRegistration concept which is equivalent
with the current Registration concept and gently nudge the users towards
it.

Change-Id: I05723cffcc41bfa2355b5e75d3e675c4809a772a
Signed-off-by: Robert Varga <rovarga@cisco.com>