impl abstract Asteroid
more refactor and setpoint for you all to go on from