major overhaul of class diagram