Initial commit.

Currently contains unimplemented static components. But all tests pass
for the non-static cases.
Add travis.yml.
Add Travis CI link to component system.