Add .gitignore
Add different output formats.

Plus whitespace.

Still needs tests and TODOing.