Implemented most of observation command

This has all of the infrastructure, but doesn't properly validate the
underlying data.