We can create a constraint from different sources
A constraint is nothing more than a vector of constraint characters together with a possible pairing for each character.
Constraint, create an NxN matrix with bonus energies. These
energies can be included in all pair-creating functions and will disallow or
strongly favor certain pairings, while others will receive neither bonus nor
In case, a pair (i,j) is annotated as both, bonus- and malus-receiving, it will be set to receive a malus. This can happen, if something like < would give a bonus, but x gives a malus (and other cases).