multithread Timeless

fix .timeless to make it work in multiple threads.
Also this works on https://github.com/mongoid/mongoid/issues/2991 so the key of the thread local is per model.

review @durran 

Also if you like the implementation, I am wondering to port this back to 4.0