First cut at transfering song:

Renamed Song to PlaylistEntry, and refactored Playlist to use this class, which
will contain information about whether the file was loaded and whether the song
was played.

Introduced PlaylistDataManager, which runs in a thread to monitor and load
playlist entires that live on remote systems.

Implemented TransferSongMessage and RequestSongMessage, for requesting and
transfering song data.

Fixed small bugs in the playlist when sending messages to update guests on play
status.

Refactored code that used Playlist to instead use accessor methods in
PlaylistService
Moved song play/pause/skip actions sent by playlist into a wrapper
AudioPlayerWithEvents, to simplify the logic in PlaylistService

Moved other play related events into the appropriate audio player

Modified PlaylistService to readd songs to playlist data manager after playlist
has been reset

Added error when trying to play and the playlist does not have any loaded songs
Fixed bugs with playing remote files using guest and host phone
Fixed race conditions/deadlock issues with loading data in a separate thread
Uncommented message sending for resume and stop
Added in optimization, so we don't clear songs immediately.
Merge branch 'master' of git://github.com/TheLastCrusade/fanClub into transfer_song

Conflicts:
	SoundStream/src/com/lastcrusade/soundstream/audio/SingleFileAudioPlayer.java
	SoundStream/src/com/lastcrusade/soundstream/model/Playlist.java
	SoundStream/src/com/lastcrusade/soundstream/net/MessageThreadMessageDispatch.java
	SoundStream/src/com/lastcrusade/soundstream/service/ConnectionService.java
	SoundStream/src/com/lastcrusade/soundstream/service/MessagingService.java
	SoundStream/src/com/lastcrusade/soundstream/service/MusicLibraryService.java
Removed dead code
Pulled write process into a separate thread, and introduced a priority queue to
allow the writer to prioritize command and status messages over song messages.
Fixed lock up bug with larger files by increasing the input buffer size (in
Messenger)
Added comments to separate two blocks of code...much clearer than lining up the
spaces
Pulled id into a local variable, for clarity
Clarified magic numbers in PlaylistDataManager.  Increased wait in stopLoading
to 1500 ms.  Added SongMetadata.UNKNOWN_SONG constant
Clarified magic number in stopWriteThread method
Added clarifying comment in setNextSong, when there is a song to play
Added newline at end of file
Merge pull request #77 from theJenix/transfer_song

Transfer song