Call rclcpp::shutdown in test_node for clean shutdown on Windows (#1515)
Call rclcpp::shutdown in test_node for clean shutdown on Windows (#1515)

The graph_listener thread is started in the background in some of the tests and
this thread is killed by Windows prior to executing global destructors if it is
still running when leaving main().  This then corrupts state because the RMW
layer is blocking in a waitset and causes Cyclone to hang trying to destroy the
waitset.

Signed-off-by: Erik Boasson <97a02664f35ad0c9cbf2121dceebca2d7373e34a@ilities.com>
ros2/rclcpp,ros2/rclcpp