Refactor command status (part 2)

This finishes up the changes to refactor the previously conflated command/status field into separate, orthogonal fields. None of the code, except for parts private to `tile_protocol`, now use the `status` field. However, there are probably still some latent bugs arising from the confused previous use of those fields, and special values of `last_modified` and so forth.

There are a couple of follow-on activities from this:

1. The `metatile` field is now present, but unused. Using this would simplify large parts of the code which currently have to keep a flag such as `m_metatile_mode`, or understand from context alone, whether a particular tile is a metatile or single tile.
2. The `trace_id` field is now present, but unused. Using this would make it much simpler to trace particular requests through the stack, for example; for debugging or performance analysis.