Add expense update endpoint

This service is callable via PUT /expense/expense-id and requires a full
expense object (i.e. no partial updates are allowed).