bunch of prototype shit. also fix build