I have a Canon 20D digital SLR. Although I have a lens for portrait and a telephoto lens of 300mm I wish to have a lens for all purposes i.e shooting subjects within 1m and upto 500m. Which lens would suit me? both for portraits and wildlife & nature shots? Any suggestions would be greatly appreciated.