Add support for TokenLifetime(TimeSpan)

I find that when representing times in .NET it is clearer to represent them using the TimeSpan object, thus I have created an overload for TokenLifetime that takes a TimeSpan rather than an int.

I also excluded .ncrunchsolution for the few people who use NCrunch.