There is a circular dependency that is currently hidden in CMake builds.
chainparams.cpp from common requires primities/transactions.cpp
from bitcoinconsensus which also depends on common. This is
hidden in every other build by linking common before linking
By moving primitives/transaction.cpp from bitcoinconsensus to
common, we can keep it and primitives/block.cpp together in one
library. This will remove the circular dependency mentioned above.
Discussed previously with Fabien.