As far as avoiding a killer asteroid in the future, I have what I consider to be a simple solution. Japan has already demonstrated the technology of landing a spacecraft on an asteroid, so what could be more simple than to land on an asteroid, rotate the landing engine 180 degrees, fire it up...