Added threading to AddQuestion.

Each AsyncTask inherits from AbstractDataManagerTask. Every place in the
DataManager where we do stuff with the remote datastore, we need to
create a task that does that. Then instantiate, pass context, and call
.execute() on it to run it in a different thread.

Pretty much everything in DataManager will map to one of these tasks.
The AddQuestionTask is an example to follow. Other tasks may require
UI-thread updating to notify views of changes. These go in the thread's
onPostExecute() method.

Notice the carreful use of getting q[0] in the variadic (by interface)
function.

This pull request is rather small because it's getting late in the evening. I have created it so that Scott can pull it and see what I've done. Please merge this into trunk. The next PR will be much bigger with more tasks written.