Added basic classes and interfaces

Laying the groundwork