Big refactor in progress. Everything is broken. Ware ye.