Now describes everything which is eventually needed.

The next step is to prioritize: and move this into separate files, commenting out text which is low priority and making text which is high priority into BDD tests.