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.
From reading the [docs](https://www.relishapp.com/rspec/rspec-expectations/v/3-0/docs/built-in-matchers/type-matchers), I think this will only pass for things that return an actual `Array`, not for cases where an array-like thing is returned (eg an ActiveRecord scope etc...).  Maybe it's worth updating this to test for the methods that gds-sso needs on the returned thing (I think that's only `#first`).