client_credentials grant type added with test support

Added support for the client_credentials grant type. Documentation needs to be updated but I figured that can be done once the PR has been accepted.