Added the getUrls method to get access to the url / urls property.
When using a tileUrlFunction, getUrls should return null.
This should fix issue #3886
The addition of full extent tile ranges also allows us to simplify wrapX
handling for tile layers. By limiting wrapX to true and false as possible
values, we can remove a lot of guessing logic.