Work around the changed hook spec and add a functional test.
Add .travis.yml.