ported changes from libSEDML

adapted the functions to use the extended dictionary that allows for
abstract classes and indeed classes derived from things other than SBase