Improve error message when fields don't match dataset.

Currently if you upload a file that doesn't include a required column, you
just get an error like `KeyError: 'id'`. This patch improves the error message
so that the problem is easier to understand and solve.