This class is used to generate the Playlists and pass them on With Localplay this actually just sends the commands to the localplay module in question. It has two sources for data songs (array of ids) and urls (array of full urls)
This function performes the garbage collection stuff, run on extend and on now playing refresh There is an array of agents that we will never GC because of their nature, MPD being the best example
run_playlist_method This takes care of the different types of 'playlist methods' the reason this is here is because it deals with streaming rather then playlist mojo. If something needs to happen this will echo the javascript required to cause a reload of the iframe.
This is a rather complext function that starts the downsampling of a song and returns the opened file handled a reference to the song object is passed so that the changes we make in here affect the external object, References++
due to the fact that this is an integrated player (flash) we actually have to do a little 'cheating' to make this work, we are going to take advantage of tmp_playlists to do all of this hotness
This manually adds a URL to the stream object for passing to whatever, this is an exception for when we don't actually have a object_id but instead a weird or special URL