Copy of NRV TimestampIdGenerator

I need to reuse it but I don't want to bring NRV as a dependency just for that. I will deprecate the NRV copy.
Merge pull request #51 from wajam/manu-timestampidgenerator

Copy of NRV TimestampIdGenerator