Actually, the project started as far back as 2006 and moved to git in 2008, hence the first commit having that date. I don't remember the exact day I started the project, but on freshcode (formerly freshmeat), the first listed version is 2006.08.08.
youtube-dl -F VIDEO_URL will give you a list of formats in YouTube, that you can choose using the -f option. DASH streams contain only video or only audio normally.
If your phone supports OGG and you're downloading from YouTube, you can download format 171 (-f 171) and change the container to OGG with ffmpeg. That way you won't lose any quality.
If your music player supports OGG, you can also use youtube-dl -f FORMAT VIDEO_URL and give a numeric format that corresponds to a DASH webm audio-only stream, with vorbis audio (e.g. format 171 these days). The container is webm but it can be trivially changed to OGG with ffmpeg, which you can call via --exec automatically.
Edit: I mentioned that because you don't lose any quality reencoding.
As it was pointed out the first time youtube-dl was on Hacker News, our user base seems to be split regarding that behavior. When you copy a URL from a playlist, the URL includes both the video id and the playlist id.
Some people want to download the whole playlist when passing a URL from one of the videos (because otherwise it's hard to get an URL that contains just the playlist). Some other people just want to download the video they are currently watching.
That's why we have the --no-playlist option, which you can use and even stick in the configuration file. There's also --yes-playlist to override the configuration file if you need to.
Why not drop to a "did you want the playlist, or just this video?" prompt?
Side-benefit: force care to be taken to be explicit if used in a script.
Personally, without reading any docs the first thing I did was paste in just a video ID (i.e. not the entire URL) so it seems natural to me that including both would be ambiguous.