(PUP-2458) Tests for providers inheriting from providers of another type

It's sometimes desirable to create new providers that inherit from providers
of a different type to create more specialised types/providers from a common
base.  This adds tests around this already-present functionality.
Merge pull request #2615 from domcleal/tickets/master/pup-2458-inherit-providers

(PUP-2458) Tests for providers inheriting from providers of another type