Key expiration not correctly set in the first request

This is my first pull request, so sorry in advance for any thing I did the wrong way.

We are using this provider on our system and we found that in some cases a sessions with a null TTL were being created on redis and never deleted. 
It seems that the KeyExpire is not correctly set on the first request (and if the key is never requested again). 
It is easily fixed only moving the keyExpire instruction after the Hashset. I added a Integration Test to the test project to demonstrate (and test) the problem.