Don't reorder messages in the outgoing queue.

Previously, failed sends would be moved to the end of the queue. If two
messages to the same contact were in the outgoing queue then this would
reorder those messages. In order to make other things (e.g. notification
of missing messages, HMAC sending) easier, this change eliminates that
reordering by moving all messages to the same contact to the end of the
queue (in the same order) when sending fails.
Update server to store time in filename.

In order to reduce (further) the reordering of messages, this change
extends the server to store the delivery in the filename of messages.
Previously the mtime was used, but that only has single-second fidelity.

The server will automatically update old message filenames to the new
scheme at startup.