So, after upgrading my empeg with a SSD, I wanted to put music back in it. I decided to use mp3tofid.

However, a few things bothered me: I had to sync my main mp3 directory and then create symlinks to it to create playlists I needed. Not practical as I have more mp3s than space on my SSD. Nor did I want to copy my music over to a new directory on my computer only for mp3tofid.
My first modification allows mp3tofid to follow symlinks outside of it's main-mp3-directory. You can now create a structure only made of directories and symlinks.

Also, I plan to use mp3tofid daily to put podcasts on my empeg. However, I don't want the podcasts to appear in the "Down-Down-Down" playlist. Ignore as Child is my friend! I did not like the way mp3tofid handled it (command-line argument), so I devised a new way to look at it. If I put (touch) a .ignoreaschild file in a folder, this playlist will be tagged as such. It's easier to manage this way, now that I run mp3tofid through a cronjob.

The only "problem" is I don't know C at all. All I did was copy/paste existing code. Do I handle malloc correctly? I don't event know what it is! What I would like is for a "real" programmer to look at the two commits and see if they make sense. It is producing the correct result as my empeg gets updated with it right now, but did I create a monster who eats memory or even worst?

If ever these two modifications are alright, we might call it 5.1.

I plan to add support for other bits like "Always randomize" later.