Add specs for the User class interface

When an app integrates `gds-sso`, it needs to have a `User` class
that includes the `GDS::SSO::User` module and fulfils a certain contract.

This change adds a RSpec shared spec that can be included in the app's `User`
specs:

```ruby

require 'gds-sso/lint/user_spec'

describe User do
  it_behaves_like "a user class"
end
```

The motivation for this comes from introducing bugs by bumping `gds-sso` and breaking SSO integration on preview.
It might be worth a comment, or maybe tweaking the test name somehow.  Maybe something like `it "all integrates together"`, or better words than that.