added reachability to determine network status
adding disk space utilities
changed reacability to disable upload button
merging from original repo
Moving async stuff to use Promise pattern

Adds MWDeferred and MWPromise classes to MWApi library, loosely based
on jQuery's deferreds.

This allows consolidating callbacks and making indentation for callbacks
a little more consistent. In theory also allows easy chaining, but
that gets ugly in Objective-C with all the brackets so not doing that yet.

Example usage of a deferred from the provider:

- (MWPromise *)startSomething
{
  MWDeferred *deferred = [[MWDeferred alloc] init];
  [something do:stuff completion:^(NSData *foo, NSError *err) {
    if (err) {
      [deferred reject:err];
    } else {
      [deferred resolve:err];
    }
  }];
  return [deferred promise];
}

...

with a consumer like this:

MWPromise *something = [widget startSomething];
[something done:^(NSData *data) {
  // do something with data
}];
[something fail:^(NSError *err) {
  // report or pass error up the chain
}];

This is much easier to indent than the previous pattern:

[something doneOnCompletion:^(NSData *data) {
             // how much do I indent here?
           }
                     onFail:^(NSError *err) {
                       // what about here?
                     }
];

and makes the method definitions much less verbose.

I have the horrible suspicion I'm leaking memory somewhere, but
XCode's static analysis isn't freaking out so... hoping this isn't
insane. :)
Merge remote-tracking branch 'sohan/Work' into reach

Conflicts:
	Commons-iOS/DetailTableViewController.m
merge cleanup
Move reachability changes over to new controller
Merge remote-tracking branch 'felixmo/master' into upload-count

Conflicts:
	Commons-iOS/DetailTableViewController.m
	Commons-iOS/MyUploadsViewController.m
Fix some async bugs introduced in the promise refactor
Fix for button pushing update

Was crashing because we didn't send the parameter to the uploadButtonPushed: selector.
Merge remote-tracking branch 'dz1111/Tools'

Conflicts:
	Commons-iOS.xcodeproj/project.pbxproj