Move the .ro directory code to a sub-directory.

Just a bit cleaner as there will lots of other stuff added soon.
Move the manifest class to its own file.
Document the RODir and Manifest classes.
Move operations on the manifest data into the manifest class.

The file class now forwards these calls directly to the manifest object that it
contains.
Harden getting a missing time from the manifest.

Now won't fail on an empty string.
Harden getting the id from the manifest.
Harden getting the creator and author list.

Now return sensible defaults.
Get the list of history files from the manifest.
Ensure that an Agent always has a name.

Even if it is empty ("").
Ensure lists are always returned when necessary.

Manifest#authoredBy and Manifest#history should always return lists but the data
in the manifest itself might be a singleton or a list.
Add separate tests for the Manifest class.

Uses the manifest listing example 3 from the spec.
Add an exception for invalid aggregates.
Add a class to represent an aggregated resource.
Minor documentation fixes.

A couple of :nodoc: markers were in the wrong place.