Make #tokens and #tokens? private methods.

Callers shouldn't make decisions based on token availability; they
should simply request or return them.
Reorder methods.
Callers should *request* or *release* tokens.

Rename methods to clarify their intent. A requestor isn't guaranteed to
receive a token, so #get_token was a bit misleading.
Update comments for #req_token.
Update comment for #rel_token.
Explain collaborator objects more grammatically.