Revamp the update function
Revamp the update function

This follows suit with the create function which:
* Handles the input parameters properly
* Update comments
* Recalculates read-only fields on appropriate update

This update does *NOT* inject audit log entries yet

vistadataproject/metaPureJS,vistadataproject/metaPureJS,vistadataproject/metaPureJS