Added a bunch of shit and fixed a bunch of shit. I'm not typing this
again.