libdocument: initialize PpsAnnotation contents with empty string
We don't want a NULL pointer to represent no contents, since we cannot distinguish so in the UI. This fixes an issue in 5b9c02f9 that causes Papers to think that it should save something when the annotation is originally empty.
In the process, fix the annotations file to use modern patterns in defining classes, and update the bindings