libshared: Introduce JSON parser and MessageBuilder.

Based on an earlier piece of source code of mine that parsed JSON into
QObjects, this JSON parser creates a BMessage tree.

Will be used by Stephan in HaikuDepot for communication with the web app.
Json: Don't force someone including to use BPrivate.
MessageBuilder: Fix init order to match header.
MessageBuilder: Fix leaking BMessages.

The initial message is not deleted, since the current message is not
on the stack.
MessageBuilder: Fix potential leaks in PushObject().
MessageBuilder: Whoops, stringDeleter must be detached when adding succeeded.
PackageInfo: Added setting rating summary before any ratings are known.

Fleshed out RatingSummary.
HaikuDepot: Use JSON parser provided by Augustin to parse response.
HaikuDepot: Fill some categories and rating summary from web app response.

This still uses the request I had prepared earlier, not the new bulk
request which can get information for the entire package list in one
request. It also has no caching, so it runs for quite a while in the
background (dedicated thread, so hopefully no harm done by keeping it
enabled).

Thanks Augustin, for the parser!