add .gitignore
move Differ
added StructMismatch
migrate from test to spec