cleans up the structure by moving initializations to their own class