Backed by Postgres

modified to persistently back the people object in postgres.  THIS PULL REQUEST DOES NOT IMPLEMENT ERROR HANDLING, but submitting it for code review right now as an educational opportunity.
@mradamh @arielspear.

It sounds like you do. In this case, when implementing a `PUT` request, the HTTP spec says that you're doing a full replace of a resource. So you'd want to fully replace the resource with what was given to you. The guards that you discuss wouldn't matter if conforming to the idea of `PUT`.

If you add more fields, though, the fact that you pull the value out of the database will make it so that the person will know about all existing fields. In this case you'll end up with a race condition when multiple people edit. This is either desired or not, but `PUT` suggests that full replacement would occur, so one _may assume_ that it'd be impossible to have race conditions here. Having said that, HTTP verbs are frequently abused.