Feature/deployment target metadatum

It's back. What was once PR #243 is now this PR. Same premise, slightly changed implementation.

This adds the ability for the API to ask any agent for its metadata, to persist that metadata locally so that we aren't hitting multiple endpoints every time we want it, and to refresh our persisted metadata.

For the moment I went with the simplest persistence mechanism, which is one column per attribute that we know about (agent version, adapter version, and adapter type). I'm not sure that's the best route to go if we start adding a lot more metadata, but I didn't want to go wild storing arbitrary JSON in the database or something until we know what else will be held in metadata. The data in that table can be wiped out at will, so changing the schema later isn't much of an issue.