Apply some fixes to filestorage.

While small, these fixes are backward-incompatible.  However, they will impact only one bit of code in the core juju repo (in state/backups.go).

The fixes are:

Do not automatically call meta.SetID().
Do not store the metadata if the file is not stored.
Do not require that MetadataStorage also implement DocStorage.