Since these are really just data structures they belon in the common library. Also, it stands to reason that we'll want to reuse them in other components, such as the result handler.