mapper: Always cache readonly maps

Seperate exclusive attribute from can_cache attribute.

* Assume that readonly maps are not modified while mapped, so do not keep the
  map locked, if it is readonly.

* Assume that every readonly map can be safely cached until explicitly closed,
  without the need to hold the lock.