Implement errors. reorganize and add travis.yml