Merge pull request #92 from irq/interfaces

Interfaces for unit testing
Merge pull request #1 from eneifert/master

Merge pull request #92 from irq/interfaces