added unit testing and travis ci intergration. Still need more tests but this is a start