Key signature

Key signature changes work like time signature. That is, they are encoded in a scoreDef when the same for all staves or in staffDef when not.

Relevant tests: