Handle old message timestamp

Store message counters in timestamp keyed maps instead of assuming current server time.

Another pull request is underway for implementation.