Add Folder Structure and Interfaces

I add folders for Interfaces, Implementations, and classes and started
to rough out some of the interfaces.