added classes to improve seperation of database: finished I7