Safer parsing of icons from info.plist

Prefers iOS 5's style of CFBundleIcons which allows for Newsstand &
Primary icon files, then falls back on CFBundleIconFiles.  Failing
that, an empty array is used to avoid a nil-crash for apps without
icons.
Merge branch 'safe_icon_parsing'