Flesh out Dashboard methods

This adds Create and Update, and also moves some logic around and gives
us a more fully functional request layer.