refactored MessageThread, and extracted the following classes:
BluetoothConnection (was MessageThread) handles bluetooth specific connection code, and assembles the generic parts listed below to read and write on that connection
ConnectionReader handles all reading in a way that doesnt depend on the type of connection (all through streams)
ConnectionWriter (was MessageThreadWriter) handles all writing in a way that does not depend on the type of connection)
IConnectionInternal defines an interface for subordinate objects (e.g. reader and writer) to call back into the connection code (to report incoming messages and transfer completed events)

Cleaned out some bluetooth specific code in NetworkFragment

Moved all bluetooth specific connection code into new bt subpackage (under soundstream.net)
changed name of IConnectionInternal to IConnectionCallback
pulled connection constants into new class
Merge branch 'conn_cleanup_and_feedback' into cancel_partial

Conflicts:
	SoundStream/src/com/thelastcrusade/soundstream/net/ConnectionWriter.java
	SoundStream/src/com/thelastcrusade/soundstream/net/MessageThread.java
	SoundStream/src/com/thelastcrusade/soundstream/service/ConnectionService.java

implemented use of MessageFuture to allow for cancelable messages

further cleaned up connection code, and segmented common functionality by class (so we can construct new types of connections)