Add song button
Slightly improve logic
Refactor and fix bugs