Use specific exceptions instead of the general MetadefRecordNotFound

Currently, when metadef namespaces, objects or properties are not found
by ID, a general MetadefRecordNotFound exception is raised. Instead,
just use the specific MetadefNamespaceNotFound, MetadefObjectNotFound or
MetadefPropertyNotFound exceptions.

Change-Id: Icb6bf543015305174720f2fd950f5e4984f39798
Closes-Bug: 1367650