Garrison Keillor to retire in 2013