Music theory
This class provides a solution for generating music scales and chords based on well known music theory rules. It applies the music theory to generate scales and chords by names based on interval patterns between notes. The class can generate scale notes by provided scale name and type, generate chord notes by provided chord name and type, transpose scales, transpose chords, generate all chords that include provided notes, generate all scales that include provided notes, generate all scales that suits provided chords and generate all chords for provided scale.