Update ok.py with a file content protocol and submission to ok-server

Changes in this branch include:
- a demo_assignment with the new test format
- updated protocol interface
- stateless ok.py that removes all personal info
- logic for finding and reading a _tests.py file containing assignment metadata
- partial implementation with TODOs for sending submissions to ok-server

Comments are most welcome. I think we're making steady progress toward an ok.py that can run tests and submit code. All other features can be added later.
Added a TODO — I'll let you do this correctly if you don't mind.