added and changed a bunch of stuff