Modified all exisiting classes, cleaned up.