Get or create token

Rewrite of #5 
Could you had a test for when token is not a function