Add size validations for /tokens.

Updates /tokens controller so that it explicitly checks the max
size of userId, username, tenantId, tenantname, token, and password
before continuing with a request.

Previously, when used with the SQL keystone backend an unauthenticated
user could send in *really* large requests which would ultimately
log large SQL exceptions and could thus fill up keystone logs on the
disk.

Change-Id: I0904d307bf79a3bf851ac052c11101f8380a12a7
(cherry picked from commit bb2226f944aaa38beb7fc08ce0a78796e51e2680)