Filling out structure

Moved some files around, there no longer exists an abstract classes
folder
Added some implementations of constructors
Added some members to the classes
Next is filling out the implementation and interface between classes