fixed: prevent infinite loop in add-on dependency checks
Merge pull request #2475 from cptspiff/prevent_infinite_loop

fixed: prevent infinite loop in add-on dependency checks
[ios/atv2] - fixed typo in README.ios
depends: pythonmodulepil depends on python26
Added CButtonTranslator::IsAnalog(int actionID) for testing if an action may be analog
[joystick] New joystick abstraction - make input handling separate from joystick APIs

This allows for APIs to coexist, such as DirectInput alongside XInput for full 360-like controller support. The current behavior is retained, where the most recent button action across all controllers is repeated at a 0.1s delay.

Analog axes can now imitate buttons, allowing easy GUI navigation. For example: `<axis id="1" limit="+1">Right</axis>`. This has the effect that pushing the analog stick >= 50% right will send a single Right action. After an initial delay (500ms) it will then send more Right actions at a 100ms period until the right stick is moved < 50%. This behavior mirrors keyboard keys.
[joystick] Added XInput joystick support. XBMC now supports all 360-like XInput-compatible controllers out of the box using the Xbox 360 keymap, regardless of controller name.
[joystick] Added Linux Joystick API client to joystick abstraction
[joystick] Disable SDL joysticks
Fixed: if "m_bEnabled" was initialized to true, "SetEnabled(true)" wouldn't execute "Initialize()"
[joystick] Fix: Add #include for forward-declared CAction class in header
[joystick] Separate abstract joystick interface from logical joystick struct and code
[joystick] Fixed: Missing includes, and we don't need to forward-declare SJoystick (never used apart from IJoystick.h)"
Refactor CKeyboardStat so that an event can be translated to a key without calling ProcessKeyDown()
[Confluence] Don't show video progress bar if player has no duration (always stuck at 0:00:00)
Added game info tags to XBMC

XBMC can now load metadata from game images. The following types of game images are currently supported: GBA, GB/GBC. CFileItem::IsGame() can be used to determine if the file item has a game info tag loaded.
games: fix crash when PVR is used
Expose GameInfoTag properties to Python list items.
Add Games category to the settings window (currently empty)
Added new Game Client add-ons based on the libretro API.