Apple's reachability with some minor modifications. Needs to have a lot added.