End to end tests defined, passing, Web API refactor and travis-ci setup