[#ANDROID-261] Add background polling for messages. Use a single worker thread for polling when message center is in foreground and background, only changing the polling frequency when switching between the two. Also exit payload send worker when no network is present. Redo the listener system so make it simpler. Use reference counting to determine when to shut off the worker threads.