JavaScript music theory library/framework