Support for interface implementations

Fixes #2