Add avatar generator
This adds an avatar generator. For every contact without a published avatar, a default avatar gets generated. This default avatar consists of a colored background and the initial letter of the nickname. Background color is determined via XEP-0392, based on the contact's nickname (as recommended here).
Additionally, each avatar (both published and generated) will be clipped when invoking
get_avatar, depending on which clip setting was chosen. There are three values for the
avatar_clipping setting: 'rounded corners', 'circle', and 'no_clipping'. Screenshots below should explain what each of these values is doing. The avatar generator (and clipping) is invoked in almost every occasion - exceptions are made for the profile window an some others where avatar publishing takes place and an unmodified avatar image is needed.
Fixes #8354 (closed)