Add a mechanism to allow user to set the expiration date on API tokens
This expiration date can be at most 2 years and defaults to 6 months.
When renewing a API token, use the default 6 months expiration.
Adjust the unit-tests for this.
Fixes https://pagure.io/pagure/issue/2416
Signed-off-by: Pierre-Yves Chibon <pingou@pingoured.fr>