(PUP-3912) Change 'describe' blocks to 'context' blocks
Previously there were spec tests with a 'describe' inside a 'describe',
which was fine and unambiguous as long as the inner 'describe' blocks
didn't make use of 'described_class'. However, rspec 3 consistently
treats the inner 'describe' as the source for the 'described_class',
which can lead to nonsense assertions with nested describes.
So this commit changes inner 'describe's to 'context's where needed
to make 'described_class' apply properly. Further, for internal consistency
within a file, all describes of a given depth or deeper that were
intended to be contexts were renamed as well.