Cache map and layer configurations

Reduces the number of database queries made (for example, from 26 to 8 queries on a map containing 5 layers + standard basemap layers).  The caches are user-specific because of user-specific layer view permissions.

Also, disable/turn off maplayer records in the map view that user does not have permission to view (depends on https://github.com/GeoNode/gxp/pull/2)