So major refactor but this setup makes more sense I hope.