Fixup some warnings

Mostly started this to fixup some stray warnings, but started converting some
syntax across, realised that we have a lot of `should` syntax here and that
currently causes a deprecation notice(s). Should we do anything about that?

Also there are some more warnings caused by overriding let definitions, via
`shared_examples` which is definitely supported behaviour, should we deal with
that warning?

Thoughts?