Merge interface into master

The default interface has been reimplemented so it can be merged into master.