Change the requirement of getServiceMessageFromOrigin from MessageInterface to BaseOptionedModel

Fixes #48