implement PutDocument for updateEntity

The card says "extend ES package with a updateEntity for doc update functionality (not just adding new doc) " PUT does both add and update.

GetDocument comes along for the ride so that we can have proper tests.
Its not used anymore. We didn't delete it for completeness. We can delete it if that is what we want.