Add GetAll method (take two)

This is @pjvds' work from #6, rebased against master so Travis will run. It was failing because the repo was forked before `.travis.yml` was added, but the tests were fine.