Improve interface for adding timestamps

Provide a simpler interface for adding <delay/> and <x/> timestamps to
stanzas.  This also makes sure that only one <delay/> tag and one <x/>
tag is added to a given stanza.
XEP-0198: Add timestamp to resent stanzas

When an unacknowledged stanza is resent from the Stream Management
queue, add a timestamp so that the receiving client can display the time
at which the stanza was originally sent.
Let CSI code add timestamp at later point in time

As a small optimization, make sure we won't add timestamps to presence
stanzas which end up being thrown away by the CSI code.
Add fractions of seconds to <delay/> timestamps

Include fractions of a second with XEP-0203 <delay/> timestamps, as
specified in XEP-0082.

	Old timestamp: 2014-05-19T11:55:00Z
	New timestamp: 2014-05-19T11:55:00.123Z
Let jlib use "B" instead of "w" to format integers

As a small optimization, use io:format's "B" control sequence to format
integers.  We don't need to let Erlang figure out the data type if we
already know it.
Merge pull request #377 from weiss/new-timestamps

Add timestamps to stanzas resent from stream management queue
improve README adding feature list
improve readability of links on github page
Apply various cosmetic changes to README file
Merge pull request #379 from weiss/polish-readme

Polish the README file a bit
Fix upgrade of PubSub mnesia tables from older ejabberd version.