added a BUNCH of key signature stuff