make the user provided namespace mapping part of the caching key in ElementPath to prevent false positives on different namespace mappings

--HG--
extra : transplant_source : %EE%12%87%C6%F2%A5d%28%99%0A%81%8F%DA%A8%BB%86_%EB%B8l
continue 3.0.x changelog
changelog

--HG--
extra : transplant_source : %7B%E7%A29%FC%A4%A80%7C2Mi%E1%607%D4%3Ah%E5%D9
add test for using different nsmaps in el.find*()

--HG--
extra : transplant_source : %7Dd%8Fs%A5%CEp%F3%9Eco%15%ACDr%21%C8%F0%2B%B0
merge lxml-3.0 branch into master