Add unit tests and Travis