Working, documentation, cleaning up, tests.
Add gitignore entry.