More oauth2 protocol request fields are now optional.

This change is required so that all most of the error handling and
reposting is handled by the service and not by the fontend using that
service.