classes added and modified, part of feature #14