created new and hopefully better names for several classes and properties