Use only scoped pointers whenever possible
The tdlib data objects should only use scoped pointers for better protection against memleaks. Also the code can be simplified. This also includes a cleanup of unused includes, and QTdMessage needed a bigger refactoring, since some fields were missing after the latest tdlib update(s).