glib: Extend FreeText annotation support

This patch allows adding new freetext annotations, their intent,
quadding and callout lines.
Core: Fix issue when adding annot without contents

Having no content in an annotation results in a crash when generating
it's appearance.