Opens an existing metadata stream.
The type that is supplied should not contain any characters that
are illegal in file names.
The function returns an open metadata object which can be used
to add, amend or delete this item of metadata.
If the specified type of metadata does not already exist no
object will be returned and an error will be thrown.