Implemented with Guzzle + Service layer (using guzzle client in intern)
changed base URL to point to prod instead of localhost
FIX: mistyped variable | FIX: updated HTTP method for resetLeaderboard operation
Updated services desc. Removed statusUpdateUrl parameter for leaderboard creation
We can now pass a timestamp when identify() or track() | Updated operations to make reference_id mandatory when creating leaderboard or badge | Added badge creation API
FIX: Namespacing
UPDATED: iterateLeaderboard* methods
FIX: throw new Exception -> throw new \Exception under namespace
Updated resetLeaderboard operation
We can now pass a player_id when fetching leaderboard results to design
    the current player. if his/her score in not in the result list it
    will
    be injected anyway. a position of -1 means that the player has no
    registered score for that leaderboard.
FIX: fetchLeaderboardResultForPlayer
UPDATE: added updateLeaderboard() API
Updated: Removed deprecated methods (leaderboards) in favor to new methods
added addPlayerIdentity/removePlayerIdentity (social) features
Added deleteBadge API method | FIX: refactored operations config
Added fetchPlayerLockedBadges() API Method. Fetching locked/unlocked badges can now specify groups to restrict its search. Can now give a group name when creating a badge
Doc
Added updateBadge API method