outlined some classes and interfaced which break down the giant Field class