idea scratchpad

add track (put)
* if insufficient id3 information is given try to guess from the URL
  if even that is not possible ask the user what to do
  idea: one option could be to open a track information editor utiliy
        that gets the trackID
        another option would be "cancel"


iPod Class for meta information about the iPod
* stores real pathnames (ipod_Control, ipod_contol, Music, music, MUSIC ?)
  gets a real track or searches the directory structure
* provides the location of files (where the tracks are stored, where the itunesDB
  file resides, where meta information is
* includes service functionalities: whipe ipod

Class with application logic providing the following methods/functionalities
* add playlist
* add track(id) to playlist(title)
* add track(id, path, artist, album, title ...)
* remove track(id, pos) from playlist(id)
* etc ... you get the idea
* this class also handles logging and keeping the container up to date

Create an adapter class between itunesdb and reader/writer to get rid of those handleXXX methods
we only need when reading/writing the database.

Rewrite parser code
* create classes for all itunesdb items all inheriting from listitem
* implement readFromStream(Stream) / writeToStream(Stream) (or something like that) for every type
  - the parser reads the first 4 bytes and decides then what class to instanciate
  - every class the knows how many bytes to read since it also gets the length information
* sounds good? think about it!

Finding the ipod(s)
* what to do if no ipod (itunesdb) could be found (create an empty one at a given place?)
  how else could we identify an empty ipod (without an itunesdb file)?
