Added and Changed a lot of stuff.