Generalise OaiPmhRepositoryRecordWriter

Change to OaiPmhRecordWriter, taking OaiPmhRecord instance.
Record writer contains serialisation code for DC and RIF-CS.
Instances of OaiPmhRecord contain all the attributes, kind of in a
generic way but with format-specific attributes like "dcType".
Need to further generalise with OaiPmhRecordProvider interface
that provides an iterator over OaiPmhRecord instances that could
come from a variety of other factory and data access classes.