Allow empty SET_PARAMETER request

Certain senders (AirAudio for Android for example) periodically
send SET_PARAMETER requests with Content-Length: 0, to which
shairport responds with an error, making those apps misbehave.
Merge pull request #237 from jclehner/1.0-dev

Allow empty SET_PARAMETER request
rtsp: don't try and take our own player lock

This can happen during a shutdown triggered by the playing thread. Fixes
issue #233 reported by therealmuffin.
rtsp: treat pthread_t as properly opaque

We use the mutex's state to determine whether the playing_thread is
valid or not. Also now use pthread_equal, as we should. Should address
issue #236.
rtsp: send responses as single packets

Under some circumstances, RTSP responses would be split into multiple
packets. This causes Airfoil to barf, as it interprets the end of the
packet as the end of the response. Since TCP_CORK is not portable, this
fix buffers the packet on the stack before using a single write.
This fixes issue #213.
README: add debian package suggestions
Add avahi-daemon as a start dependency in the debian init script.

Startup could failed if update-rc.d started shairport before avahi.
Also add a note about updating the logrotate file if non-standard
log and error files are used.