Add support for dependent preferences.

Pull request: https://github.com/robolectric/robolectric/commit/d61f0d61a95598d8aedf8add4ea14a8aad6ab3c4 caused dependencies to be set
when specified in the resources file. This was causing Preference.registerDependency() to throw an IllegalStateException since
no PreferenceManager was set with which to look up the dependency.

1. Added a dependency preference in preferences.xml which exposes this bug.
2. Fix bug by reflectively calling onAttachedToHierarchy() passing the PreferenceManager down the hierarchy of preferences.
Merge pull request #1180 from jongerrish/support_dependent_preferences

Add support for dependent preferences.
MenuItem.getIcon should return the drawable from setIcon.

Fixes #1173. Closes #1174.
Fix dereferencing resources from styles

Fixes #1158. Closes #1161.
Implementing in respective Shadow methods that were added in android.view.Display in API 17 https://developer.android.com/sdk/api_diff/17/changes/android.view.Display.html
Merge branch 'BernNotice-master'
Fixed ConcurrencyException in ShadowLocationListener

When calling removeUpdates(LocationListener), the listener will be added to the removedLocationListeners list instead of actually removing the corresponding ListenerRegistration.
This makes sure that a ListenerRegistration is not removed inside a loop which iterates listeners.
Instead the cleanupRemovedLocationListeners() method now handles the actual removal of location listeners.
Merge pull request #1182 from xorrizon/fixShadowLocationManagerConcurrencyException

Fixed ConcurrencyException in ShadowLocationListener
extract MavenCentral interface
cached MavenCentral
change used Hashtable to HashMap in CachedMavenCentral implementation
fix theoretically possible cache id conflict
Update FragmentTestUtil to allow caller to specify Activity class
fix CachedMavenCentral compatibility with MavenCentral interface
Tabs -> spaces
Merge pull request #1183 from jimmyorr/fragment-test-util-custom-activity2

Update FragmentTestUtil to allow caller to specify Activity class
Merge pull request #952 from psliwa/performance-bust

Extract MavenCentral interface + cache support implementation for MavenCentral
Refactored MavenCentral interface

Renamed the MavenCentral interface to DependencyResolver (which is a more
accurate description of its purpose) and renamed its implementing classes to
MavenResolver and CachedMavenResolver.
Added ability to run Robolectric tests offline

Set the following system properties to activate the behavior:
  robolectric.offline=true
  robolectric.dependency.dir=<path>

Runtime dependencies will be retrieved from the specified path
instead of being downloaded from Maven.
Further renaming for consistency