[bugfixes] Enhancements for Facebook

This set of enhancements for Facebook introduces provides a slightly
cleaned up FacbeookInterface, and a better way to detect Facebook
types, by using the metadata=1 field if even heuristics for type
detection failed. It also imrpoved related data loading, by being
able to load number of likes and comments for albums, posts and
photos.

There is also a fix about the way urls were parsed. It now uses
QUrl::fromEncoded for maximum safety. Before, using just
QUrl(someString) made some urls unable to be used with
QML Image.

Some API breaks happens:
- In ContentItemInterface: isIdentifiable property renamed identifiable.
- In FilterInterface: matches became non-invokable.
- In SorterInterface: firstLesserThanSecond became non-invokable.
- In SocialNetworkInterface, arbitraryRequestResponseReceived signal's
  first argument is now "bool isSuccess".
- In FacebookPhotoInterface: albumIdentifier and position removed.
  They do not exist in Facebook graph API.
- In UserInterface: userName renamed username and timezone_offset renamed
  timezone to match Facebook graph API.

A new tool is added generatefields.py, that is used to generate a complete
list of fields. This tool can be used to generate the default fields list,
and be able to query additional fields and the default ones at the same
time.