steam-api: replace XML character entities with certain requests

Some of the Steam Community API requests provide XML encoded character
entities for displaying the data directly on web pages. This does not
apply to this plugin since nothing is render via HTML. As a result, the
XML entities must be replaced with their representing character to have
seamless integration.
steam-api: fixed custom profile URLs causing request failures

Some requests are sent to sub-URLs of the user's profile URL. As of now,
the plugin just assumes that the profile URL is the default SteamID URL.
However, this is not the case as a user may have a custom profile URL
specified. The Steam Community does not mirror the pages at both URL
locations, but rather redirects to the proper profile URL. Since the
plugin's HTTP interface ignores redirections, any request using the
profile URL will simply fail.

This issue has been resolved by storing a SteamUserInfo in the SteamApi
for the user. The SteamUserInfo is updated on login, and during polling
operations.
steam-http: fixed memory leak with resending requests

It is possible for the SteamHttp interface to lose track of a request
that is waiting to be resent. This is typically only seen when freeing
the SteamHttp while there is a SteamHttpReq being resent. The request
should not be removed from the SteamHttp until it is actually finished.