refactor and improve add song code in model and controller