Remove trust dependency on token_api

The trust_api and controllers no longer directly depend on the
token_api. The `validate_token` call on the `token_provider_api`
is now used to retrieve token data.

The token_provider_api listens for trust deletion events to clean
up the token persistence backend. In support of this callback, it
is now possible to perform a .get_trust() and specifically request
deleted / expired / fully consumed trusts. This is done by passing
the kwarg 'deleted' with a value of 'True' to the `get_trust`
method.

This change is to ensure interactions with the token persistence
are consistent so that it is possible to support toggling
persistence of tokens.

Change-Id: Ifc7174d6473dfa279b3dc706a59bc58c812332b3
bp: non-persistent-tokens
Merge "Remove trust dependency on token_api"