Refactor manifest parsing

Consolidate tests for valid field names and values into
one place
"rhizome add file" manifest field=value varargs

Now a new manifest can be formed, and an existing manifest modified, by
giving "field=value" or "!field" command-line arguments at the end of
the "rhizome add file" command (after the <bsk> argument).

This makes it easier to script rhizome operations.