interface extraction finished. closes #43, closes #34