Feedback client timeout (fixes #15)

This adds a timeout to the feedback client so, if Apple never  closes the connection, we don't hang trying to get feedback. This covers #15 and depends on #18.