Overhaul

Merge me plz. I iz ready nao :cat: