Default CMSMain to Versioned::reading_stage("Stage")

Regression caused by https://github.com/silverstripe/silverstripe-framework/pull/2585
Merge remote-tracking branch 'origin/3.0' into 3.1
FIX: Fixed testing of theme switching.

The previous theme test relied on the existence of the tutorial theme, which has been removed.
I'ved added a couple of behat rules for scaffolding fake themes, and altered the test to use these.
FIX: Added proper state-restoration code to the ThemeContext:
Minor improvement of theme switching test performance.
Merge pull request #937 from sminnee/fix-theme-test

FIX: Fixed testing of theme switching.
Merge remote-tracking branch 'origin/3.1'