Bug 978593 - refactor and cleanup NetworkLocationProvider. Prep work to enable celluar support. r=jdm