Factor out common code and test

The findInterimTiles method was used in three renderers.  This change makes it available on the tile source and adds some basic tests.
Fix return from findLoadedTiles

Previously, the findInterimTiles method was returning undefined if the min x/y coord for a tile range was already in the lookup.  The return says it indicates whether all tiles for the given z are loaded.  This change corrects the return.

This change also reveals a misunderstanding of the tile range returned by `getTileRangeForExtentAndZ`.  The previous findInterimTiles method was treating max values as inclusive.  This is intuitive.  It looks like the method returns a range where max values are exclusive.
Passing tests
Merge branch 'master' of github.com:openlayers/ol3 into interim-tiles
Fewer tiles to be considered fully loaded

With 797dba2cdbabd8fa0a78c32a7b3bfcdbff29eea8 we no longer have to load excess tiles to consider an extent fully loaded.
Accept custom isLoaded method in findLoadedTiles method
Merge pull request #206 from tschaub/interim-tiles

Share common code to find loaded tiles