Tokens - simplify and standardize interface of search methods

Some methods in `Tokens` return `Token` that we are searching for and it's index by last parameter passed by reference.
But we often need only that index, no `Token` itself.
And other methods return only index.

So let it be one way - return index, and if we need `Token` then grab it by index.
You need to change the handling of not found token, to do it before getting the token with a `null`` index (other places may need the same safeguard)