Reorganize the backend interface definitions
Merge pull request #1271 from alex/organize

Reorganize the backend interface definitions