CMS tweaks: DRY index logic, move module to link table, fix hiding of roles_permitted, add optional location_id to Posts