provenance plugin

Fixes #242.

- [ ] add tests, fix style
- [ ] get and address feedback