Не совсем понял. Вы хотите, чтобы был ещё класс DatabaseState? Просто я специально сделал именно такой же код, как и в шелле, потому что думал, что правильно - если мы тупо скопипастим сам шелл из второго задания.