Annotation: generate id on create, not on access.

We don't want to generate a new id on access as this will change annotations
that were initialized from json. But new annotations should probably have an id
so generate one on creation.
Fix erroneous Annotation test data.
Allow annotation content to be set at creation time.
Edit annotation content.
Rename Annotation#about to Annotation#target.

"target" is a more descriptive name for the API. "about" is still used in the
manifest json serialization, of course.
Add access to the manifest @context element.
Create the .ro directory on init if needs be.
Write out the manifest when closing the bundle.
Don't create an empty Agent for Manifest#created_by.