Add some integration tests

These are not yet perfect or comprehensive but they are a nice start.
Downloads to test/tmp (which is in gitignore) and removes the dir every
time before and after each test so each test is run from a clean slate.

Fixes #35