Cache asset requests

Even if several entities have the same geometry, the geometry is requested by individual ajax request for each entity. This improvement introduces a slim caching structure that keeps track of which documents were requested and only creates requests for those once.