added token class and implementation plus tests. also updated setup.py with dateutil requirement