Songdata header cleanup pt1.
Songdata header cleanup pt.2

- Merged song.c with songdata.c
- Moved dirstack functions to own header