Added the basic classes and basic tests