Convert EDPreferenceActivity to PreferenceFragment
Convert AccountsActivity to ListFragment
Encapsulate AsyncTask's in their own Fragment

This commit introduces TaskFragment, which is used to encapsulate an
EDAsyncTask. For the fragment we do setRetainInstance() which makes sure
that the hosting Activity will retain the fragment upon being recreated.
In TaskFragment we manage attaching/detaching to an Activity and adjust
the necessary state such as progress bars etc.

There is also a rather large refactoring of the progress reporting code
in this commit, which introduces TaskProgress which is now used by all
EDAsyncTask to report job status. In a future commit, it will be
possible to improve the ProgressDialog used with a custom implementation
since all tasks now use a common progress reporting mechanism.