add tests, travis and coveralls