Add ASYNC task for network IO

network IO (or any IO for that matter) should always be ran in an async task.
by running anything in the UI thread, it can become unresponsive causing
a force close or ANR. To let the user know that there is work being done and
the app didnt just ignore them, a dialog was added that is dismissed when the
thread is done working.

Change-Id: I6ca1dbb69d40c7f41b2f8840a4e8ab3646541620
Merge "Add ASYNC task for network IO"