created a bunch of wrapper classes

including directions, surrounding conditions and implicitly for state