updated scanline fill, still buggy