Form: agreement [name/id] properties...
This form defines an agreement among a set of sides. The name/id is a unique internal identifier.
AgreementProperty: type-name str
This property is the name of the general type of agreement,
such a trade.
Defaults to "".
AgreementProperty: title str
This property is the player-visible name of the agreement.
Defaults to "".
AgreementProperty: terms forms...
This property is the list of terms of the agreement.
Defaults to ().
AgreementProperty: drafters side-list
This property is the side that initially proposed the agreement.
AgreementProperty: proposers side-list
This property is the side that initially proposed the agreement.
AgreementProperty: signers side-list
Before the agreement is made, this property is the proposed list of participants. After the agreeement is made, this is the actual list of participants.
AgreementProperty: willing-to-sign side-list
This property is all the sides that have already agreed to this agreement, on condition that all the other sides accept it.
AgreementProperty: known-to side-list
AgreementProperty: enforcement form
[include values such as enforced and publicity?]
AgreementProperty: state state
[add symbols for states]