midway through adding renderer as an interface
Moving stuff around!