Avoid network on the main thread in all cases

A few situations were missing, so I used a different aproach. Instead of special handling of cases where we are on the main thread, the default send method now makes sure, not to perform network operations on the main thread. A new method is introduced, which can be used when we are not on the main thread.
All read operations are performed by the listening thread, so those cases were allready covered.

Additionally the send process and asynchronous handling are now documented (javadoc).
Fixed bug in the previous commit
Overflow menu and current playlist changes in the actionbar compatibility code

When running the actionbar-branch on a pre honeycomb device, I have noticed a few issues. This commit solves these.

1) Nothing happens when pressing the menu button. This feels like an error.

2) I can't find the current playlist, because it is hidden in the options menu.

Solution:

The actionbar compatibility code is moving excess actionbar items to the action overflow.
Currently this is a popup menu, which is activated by an overflow icon.
In the native ActionBar, "the overflow icon only appears on phones that have no menu hardware keys. Phones with menu keys display the action overflow when the user presses the key."
Since all pre honeycomb devices have menu keys, and we only use the compatibility code on pre honeycomb devices, it is safe to leave excess actionbar items in the options menu.
This simplifies the code somewhat, while providing additional space on the action bar.

The extra space is used to display an additional icon on the action bar. Additionally the Ifroom option is now supported. The calculation of how many icons to display, is done as described in http://developer.android.com/design/patterns/actionbar.html, except that the restriction of "Action buttons in the main action bar may not occupy more than 50% of the bar's width" isn't checked. The withText option is still not supported.
Merged nik/actionbar
Fix list view creation problems

The view generating hierachy and the simple views have become more complex.
This means that it is no longer sufficient to check if the tag is null, to
see if we can reuse the view. We also need to check if the view is the correct
type. We do this by checking the type of the tag, because it leads to
slightly simpler code.
Merge commit 'f96eebf0df3bb155e96878da237b1e1819fbf249' into actionbar.
Fix list view creation problems

The view generation hierarchy and the simple views have become more complex.
and it is no longer sufficient to check if the tag is null to see if we can
reuse the view.  We also need to check if the view is the correct type.

Do this by checking the type of the tag because it leads to slightly
simpler code.

Merges commit '05f2fd5a3fa3c18e108ea3e908e1a6f848c98151' into actionbar

Conflicts:
	src/uk/org/ngo/squeezer/itemlists/SqueezerCurrentPlaylistActivity.java
	src/uk/org/ngo/squeezer/itemlists/SqueezerPluginItemView.java