Part3 test cases

Initial pull request.
NOTE: Please don't merge this yet (I mean you could, but there's no point...)
I just want to do a pull request so that I can diff master with this branch, and also leave comments so that we all get emails.