F.shell resubclass

1. Re-implements NewVariableQuestion,  GetValueQuestion, and CommandQuestion as subclasses of RecordingQuesion.
2. Adds new variable questions to `courses/tests/basic.yaml` to demonstrate resilience to incorrect assignments by user.
3. Fixes bug in RecordingQuestion.execute (missing break)
4. Should obviate issue #28
5. Probably renders several of the in-package lessons obsolete:
 * Tricky and Experimental in `courses/test`
 * Everything in subdir `yaml`