Added method and changed how the modes work to incorporate new key and BPM prepend method