State Pattern Classes improved