Copied from previous Matchismo project.

for assignment 4.
Revert 7a235e5..025ae8a

This rolls back to commit 7a235e518625c9b34561af4664464d814d0b97a1.
rename to assignment2
add unit tests