Setup travis ci

Merge this branch at last after #50, #51 and #52 which solve some structure requirements in order for all tests to pass via travis ci server.
This pull request sets up travis configuration, after this will be merged travis will be configured.