Add documentation
Add license headers, and make it configurable
Add a failing test