Changed null callback behavior

AsyncTasks cannot be nested. Created a blockingRun() method in the
AbstractDataManagerTask class that runs doInBackground() and just gets
that result in the currenthread.