translate ER_DUP_ENTRY on account create

Concurrent `/account/create` requests will race to write to the db. Instead of surfacing the error as a 500, it should be a normal account exists error.

Note to self, audit endpoints for other concurrent errors that could be nicer.

Fixes #625