added unit tests
added gitignore