3) crosslink "list" stuff, for example, artists are crosslinked to alubms and vice versa, this way you can do list album artists or list artist albums, this will make life easier when we add genre and other metadata
6) use mackstann's idea of "polling" for signals instead of handling them right away, i .e. set some variables and in the sigHandler, then deal with it in select(), while loop