Made the metadata setter replace all metadata of that class, widened
setter input and also ensured all items are stored according to
sub-interface of MetadataType
Corrected spelling and javadoc