Timing is based on need. Bush would probably never have run for President on his own, and even now wouldn't run for a second term if the same people who asked him the first time didn't ask him to run again. If he is meeting their needs, they will ask again. If giving NASA a clearer goal meets the needs of the country now, he will do that now.
Because most people don't understand the "why" of going. Think national security (comcats - commercial and military). Add to that a need for more math and science graduates, a push for new technology that always helps our economy, and you have a national goal that pays back as well as inspires.