Token service priti

Implemented Basic Token Service.. Wrote Test cases for the same.
Further extensions can be done to set session timeout period and accordingly maintain sessions. But not sure whether session timeout period is responsibility of TokenService or Log In module...
While this implementation is correct, it does not communicate the intention of the code clearly.
1. 2 is a magic number. Ideally you should assign it to a constant like MaxActiveTokenCount. 
2. I would actually create a small appropriately named method to communicate the intent. Most modern day compilers are smart enough to inline such methods automatically at compile time.
E.g., 
```csharp
if( AreTokensAvailable() == true )
   return _database.Create();
else throw new ...
```