added tests, travis, etc