use preference change listener, make GridFragment and adapter public static
refactored detail fragment
refactored activities