Tag Persistence

I meant to add this a while back but never got to it. This should allow us to persist tags to a JSON file using the `-tags-file` option or `tags_file` config option.

I have made it so that the `-tag` option and passing tags in via config will result in an error at agent start time. This is to preserve previous functionality while still allowing for a tags file to be used, and not trying to do some weird tag merging business.