some refactoring, moving out common pieces between music models
THE music model
show SO on exact inference